Syncing Development Files

As a programmer, I use multiple computers. My desktop computer is my main device, while I use my laptop when on the road or when I need a change of scenery and want to work in a different room for awhile. One issue with this is it produces a problem of knowing which machine development files are on and creates work in manually copying/moving files between them.

As Windows 7 is installed on both devices, I have found that Windows Live Mesh is useful. I have also come across articles on how to setup git with Windows Live Mesh, such as http://blog.fossmo.net/post/Ten-steps-on-how-to-store-Git-repositories-in-Live-Mesh!.aspx. I find this to be very cool. I can clone a bare git project into Live Mesh and use it as a central location to push/pull changesets from my laptop and desktop machine.

As sync tends to always produce some snags - even with Google sync - it is nice to know that should Mesh destroy a project, that it is just one cloned copy and can be restored easily from another clone on either computer. I have been using this setup for a few days now and it has already saved me a bunch of work and I feel some of the weight of remembering which version of files is the most current and which machine they are on to be lifted.

By the way, I could have setup a local git server for my home network, but Mesh/git is nice and effective and so felt this unnecessary. I also have files that I do not wish to put under version control, but keep organized the same on both devices, so Mesh is nice for this.

The desktop computer does dual boot (ubuntu) linux and unfortunately at this time, Mesh does not support linux (but does support Mac...). I will have to either wait or find a workaround or alter my setup to get all environs working together.

Add new comment