mutagen

module
v0.9.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 17, 2019 License: MIT

README

Mutagen

Mutagen is a fast, continuous, multidirectional file synchronization tool. It can safely, scalably, and efficiently synchronize filesystem contents between arbitrary pairs of locations in near real-time. Support is currently implemented for locations on local filesystems, SSH-accessible filesystems, and Docker container filesystems.

Mutagen is designed specifically to support remote development scenarios, with configurable behaviors specifically designed to help developers edit code locally while building, running, or packaging it in a remote environment.

For more information, please see https://mutagen.io.

Usage

For an overview of Mutagen's design and basic usage, please see the "Design and usage" guide.

Information about more advanced topics is also available in Mutagen's documentation.

Status

Mutagen is a very powerful tool that is still in early beta. It will almost certainly have unknown issues. It should not be used on production or mission-critical systems. Use on any system is at your own risk (please see the license).

That being said, Mutagen is a very useful tool and I use it daily for work on remote systems. The more people who use it and report issues, the better it will get!

Windows macOS/Linux Code coverage Report card
Windows macOS/Linux Code coverage Report card

Community

To follow release and security announcements for Mutagen, please subscribe to the mutagen-announce mailing list.

For discussion about Mutagen usage, please join the discussion forums.

Contributing

If you'd like to contribute to Mutagen, please see the contribution documentation.

Security

Mutagen takes security very seriously. If you believe you have found a security issue with Mutagen, please practice responsible disclosure practices and send an email directly to security@mutagen.io instead of opening a GitHub issue. For more information, please see the security documentation.

Building

Please see the build instructions.

Directories

Path Synopsis
cmd
Package cmd contains various facilities for the command line portion of Mutagen.
Package cmd contains various facilities for the command line portion of Mutagen.
pkg
agent
Package agent provides facilities for extracting, installing, and connecting to agent binaries.
Package agent provides facilities for extracting, installing, and connecting to agent binaries.
compression
Package compression provides simple compression facilities for wrapping streams.
Package compression provides simple compression facilities for wrapping streams.
configuration
Package configuration provides loading facilities for Mutagen's TOML configuration files.
Package configuration provides loading facilities for Mutagen's TOML configuration files.
daemon
Package daemon provides facilities for daemon operation.
Package daemon provides facilities for daemon operation.
encoding
Package encoding provides safe, atomic utility methods for encoding/saving to disk and loading from disk/decoding of data in common formats.
Package encoding provides safe, atomic utility methods for encoding/saving to disk and loading from disk/decoding of data in common formats.
filesystem
Package filesystem provides low-level race-free traversal mechanisms and modification operations for filesystems.
Package filesystem provides low-level race-free traversal mechanisms and modification operations for filesystems.
filesystem/behavior
Package behavior provides filesystem behavior probing facilities.
Package behavior provides filesystem behavior probing facilities.
filesystem/behavior/internal/format
Package format provides filesystem format enumerations and querying functions.
Package format provides filesystem format enumerations and querying functions.
filesystem/internal/syscall
Package syscall is an internal POSIX system call compatibility shim needed to ensure the availability of certain constants and functions across all supported POSIX platforms.
Package syscall is an internal POSIX system call compatibility shim needed to ensure the availability of certain constants and functions across all supported POSIX platforms.
filesystem/locking
Package locking provides a file locking type that is robust to abrupt process termination.
Package locking provides a file locking type that is robust to abrupt process termination.
filesystem/watching
Package watching provides a uniform interface to native filesystem watching facilities.
Package watching provides a uniform interface to native filesystem watching facilities.
filesystem/watching/internal/third_party/winfsnotify
Package winfsnotify allows the user to receive file system event notifications on Windows.
Package winfsnotify allows the user to receive file system event notifications on Windows.
grpcutil
Package grpc provides utility functions for use with gRPC.
Package grpc provides utility functions for use with gRPC.
housekeeping
Package housekeeping provides automated cleanup facilities for the Mutagen data directory.
Package housekeeping provides automated cleanup facilities for the Mutagen data directory.
integration
Package integration provides integration tests for Mutagen.
Package integration provides integration tests for Mutagen.
integration/protocols/netpipe
Package netpipe provides the Mutagen netpipe protocol implementation, which is an in-memory protocol that uses Mutagen's remote endpoint infrastructure over a net.Pipe.
Package netpipe provides the Mutagen netpipe protocol implementation, which is an in-memory protocol that uses Mutagen's remote endpoint infrastructure over a net.Pipe.
mutagen
Package mutagen provides common version and legal metadata for Mutagen.
Package mutagen provides common version and legal metadata for Mutagen.
process
Package process provides additional utilities for launching and managing executable processes.
Package process provides additional utilities for launching and managing executable processes.
prompt
Package prompt provides facilities for classifying prompts, displaying prompts, and coordinating prompters.
Package prompt provides facilities for classifying prompts, displaying prompts, and coordinating prompters.
protocols/docker
Package docker provides the Mutagen Docker protocol implementation.
Package docker provides the Mutagen Docker protocol implementation.
protocols/local
Package local provides the Mutagen local protocol implementation.
Package local provides the Mutagen local protocol implementation.
protocols/ssh
Package ssh provides the Mutagen SSH protocol implementation.
Package ssh provides the Mutagen SSH protocol implementation.
rsync
Package rsync provides an implementation of the rsync algorithm as described in Andrew Tridgell's thesis (https://www.samba.org/~tridge/phd_thesis.pdf) and the rsync technical report (https://rsync.samba.org/tech_report).
Package rsync provides an implementation of the rsync algorithm as described in Andrew Tridgell's thesis (https://www.samba.org/~tridge/phd_thesis.pdf) and the rsync technical report (https://rsync.samba.org/tech_report).
session
Package session provides session management facilities, including the core synchronization loop logic.
Package session provides session management facilities, including the core synchronization loop logic.
session/endpoint/local
Package local provides the local endpoint implementation.
Package local provides the local endpoint implementation.
session/endpoint/remote
Package remote provides a client/server architecture for hosting and connecting to a remote endpoint instance.
Package remote provides a client/server architecture for hosting and connecting to a remote endpoint instance.
state
Package state provides index-based state change tracking facilities.
Package state provides index-based state change tracking facilities.
sync
Package sync provides the core data structures and algorithms used by Mutagen.
Package sync provides the core data structures and algorithms used by Mutagen.
url
Package url provides facilities for parsing and formatting Mutagen's URL formats.
Package url provides facilities for parsing and formatting Mutagen's URL formats.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL