This is the spiffy homepage for the vcs-home group. We try to figure out how to use version control systems to manage your documents. This includes topics such as backups and anything else related you might think of.

We are mostly a mailing list for now. Please join and post your thoughts. There is also #vcs-home/ if you want to chat.

And this is a wiki, meaning you can/should/are allowed to edit it!


What people do:

Public dotfile repos:

Abraham Raji Adam Evyčędo Akseli Lahtinen Björn Lindström Caleb Maclennan Christoph Berg Daniel Silverstone Daniel Silverstone David Thompson Doodles Evan Purkhiser Fabian Ferass El Hafidi Honza Pokorny James McCoy Jeremiah Orians Joost van Baal-Ilić Josh Triplett Kyle Meyer Leonora Tindall Marcel Bischoff Martin Tournoij Omar Polo Peter Cai Peter Palfrader Raúl Benencia Sean Whitton Silvio Knizek Steve McIntyre Thomas Criscione Tom Ryder more

Maintained tools:

  • vcsh allows you to put several Git repositories into $HOME at once and has both built-in management for multiple repositories as well as integrates with mr
  • chemozi manages personal config files and offers templating, secret retrieval, transparency, declarative configuration, speed and ease of use
  • dvcs-autosync is a "A personal Dropbox replacement based on Git" which can conveniently autocommit/sync one or more vcs directories
  • dotsync can pull from a git repo, and "push" to any number of remote machines with git or rsync to keep your dotfiles in sync across machines
  • dotphiles is a forkable dotfile repo, using dotsync, dotzsh & dotvim
  • Adam Spiers uses mr together with a plugin for GNU Stow (a symlink farm manager). This approach is in some respects similar to vcsh but uses symlinks rather than detached git working trees.
  • home-manager provides a basic system for managing a user environment using the Nix package manager
  • hstow is a POSIX sh-compatible reimplementation of the core features of GNU Stow, for dotfiles. It has the advantage that you can use it on machines without Perl. Its author usually uses it in combination with myrepos.
  • dotdrop
  • yadm
  • dots


  • vcsh relies on fake bare Git repositories; which are explained here, here, and here

Other tools that help with this:

Un-maintained tools:


Other documentation: