Mutagen tutorial: syncing files easily with a remote server

What if you could enjoy the computing power of a remote server in the comfort of your laptop? In this article, I'll show you how to use Mutagen to enable bidirectional sync between your local computer and a remote server. Every time you edit a file on either computer, it'll be synced to the other.

To get this running, we only need to install Mutagen on our local machine. Installations instructions are available here, for Mac OS for instance:

brew install mutagen-io/mutagen/mutagen

Starting a sync

To start a sync, simply run:

mutagen sync create --name=backend ~/Documents/backend [email protected]:/home/user/backend

To monitor sync constantly you can use:

mutagen sync monitor

Sync conflicts can occur from time to time. To resolve them simply delete the file from the host or the target. You can list conflicts by running

mutagen sync list

Creating a config file

By default, Mutagen will sync everything. While you can run it with arguments, I'd suggest using a config file. Create a file in ~/.mutagen.yml and add the following content:

sync:
    defaults:
        ignore:
            vcs: true
        paths:
            - "node_modules"
            - "*.ckpt"
            - ".DS_Store"
            - "__pycache__"
            - ".idea"
            - ".ipynb_checkpoints"

This way, you'll be able to handle version control on your local machine and you'll avoid sync conflicts with git files.

Eliot AndresCo-founder & CTO @ Photoroom
设计你的下一张精美图片

设计你的下一张精美图片

无论是销售,推广还是发帖,通过出众设计,生动呈现你的创意。

Keep reading

The Hunt for Cheap Deep Learning GPUs
Eliot Andres
Why sequential testing is the right way to experiment at the speed of PLG apps like Photoroom
Charlotte de Thiersant
What's new in product: September 2024
Jeanette Sha
Photoroom acquires GenerateBanners and launches Visual Ads Automation—first-to-market GenAI engine for large-scale ad creatives
Lyline Lim
Photoroom foundation diffusion model: why, how, and where do we go from there?
Benjamin Lefaudeux
Embracing radical openness: How a “No DM” Slack policy drives impact at Photoroom
Matthieu Rouif
What's new in product: September 2023
Jeanette Sha
Improving the Loading Experience in SwiftUI
Vincent Pradeilles
How Photoroom runs daily standups for 40 engineers and what’s a good standup message
Eliot Andres
Building a fast cross-platform image renderer
Florian Denis