This way my stuff is
mirrored on three computers and
accessible anywhere (well, the ssh port is open on most firewalls I have encountered so far).
Syncing desktop, notebook and server with bzr
For projects like „studying“, „wobsite“, „evaluations“, … I use a bzr branch on my server like so:
cd someproject # first time setup (on desktop) bzr init . bzr push sftp://server/var/bzr/someproject bzr bind sftp://server/var/bzr/someproject # get it to notebook (still on desktop) ssh notebook bzr co sftp://server/var/bzr/someproject exit # on the road, without internet access (on notebook) bzr unbind bzr m "will merge it, when i come home" # back at home, with internet access (on desktop) ssh notebook bzr bind bzr update bzr m "did some stuff on the road" exit cd someproject bzr update
~/someproject is already versioned and I have internet access available, the workflow remains simple:
cd ~/someproject bzr update # do stuff bzr m "did stuff"