Git: keeping a project synced via mail

You should also look into git-bundle. From the help:

Some workflows require that one or more branches of development on one machine be replicated on another machine, but the two machines cannot be directly connected, and therefore the interactive git protocols (git, ssh, rsync, http) cannot be used. This command provides support for `git fetch` and `git pull` to operate by packaging objects and references in an archive at the originating machine, then importing those into another repository using `git fetch` and `git pull` after moving the archive by some means (e.g., by sneakernet). As no direct connection between the repositories exists, the user must specify a basis for the bundle that is held by the destination repository: the bundle assumes that all objects in the basis are already in the destination repository.

Bundles are binary files but they are typically small since you don't need to include the entire repository and they're compressed.

Git Magic has some example usage too.


Take a look at git-send-email and git-format-patch.

EDIT: Pat's answer is better since it preserves the commit IDs.


You could probably use a small, portable USB key to hold a master repository for the project. Then you can update and sync it both at home and at work. This is easier than trying to manage using e-mail, in my opinion.

Tags:

Git