Edit remote code with your local editor.
No more web IDEs, no more fragile SSHFS mounts, no more switching tools.
Synchronization is supported between any pair of local, SSH-accessible, and Docker® container endpoints. You can even synchronize between two remote endpoints without ever having a local copy of the files.
Mutagen supports a broad range of platforms, handling their idiosyncrasies transparently and offering users full control over incompatibility handling.
Mutagen is a open-source tool, not a service. Your files are only stored at the locations where they're synchronized and you stay in complete control of that synchronization.
Unlike other file synchronization tools, Mutagen's out-of-the-box behavior is focused specifically on development scenarios. It comes with safe and portable defaults, with configurable behaviors for:
Configuration can be done on a global, per-session, or even per-endpoint basis.Read more →
$ cat ~/.mutagen.toml [sync] mode = "two-way-resolved" maxEntryCount = 50000 maxStagingFileSize = "10 GB" [symlink] mode = "posix-raw" [watch] mode = "portable" pollingInterval = 5 [ignore] default = [ "ignore/this/**", "!ignore/this/that", ] [permissions] defaultFileMode = 644 defaultDirectoryMode = 0755 defaultOwner = "george" defaultGroup = "presidents" $
Mutagen supports a spectrum of synchronization modes with behaviors tailored to different development scenarios. These include both unidirectional and bidirectional modes, each with configurable conflict resolution. By combining different modes and configuration parameters, Mutagen can be used to create arbitrarily complex synchronization topologies.
Mutagen uses a custom rsync implementation to facilitate differential transfers of files and filesystem snapshots. Coupled with low-latency filesystem watching, metadata caching, efficient reconciliation algorithms, and pipelined network operations, Mutagen has excellent performance even in low-bandwidth, high-latency setups.Read more →
Flakey connections and offline work aren't a problem.
Mutagen's algorithms are designed to be interrupted at any point in time, for any length of time, with synchronization continuing exactly where it left off once Mutagen is able to reconnect. And because Mutagen isn't a virtual filesystem, files don't disappear when you're offline.
Mutagen doesn't require any manual installation on remote synchronization endpoints. Instead, it ships with a broad range of small, cross-compiled "agent" binaries that it automatically copies to remote endpoints as necessary. Most major platforms and architectures are supported.Read more →