Subject: Re: Syncing a git working tree with Dropbox?

From: chombee <[email-masked]>
Date: Thu, 14 Jan 2010 13:40:49 +0000

Ok, I was aware that I would have to sync the .git directories also, but
my plan was to do that in the normal way (git pull and git push) but
sync the working tree automatically with Dropbox. However, I'm now
imagining all kinds of mind-bending problems this might cause. If I
commit and push some changes on machine A, and Dropbox syncs the working
copy, then I go to machine B, git status will show that machine B has
changes to commit, until I do git pull on machine B. As Geoffrey points
out, changing branches could be even worse!

In any case, I've had problems with detached working trees. With an
older version of git it was refusing to checkout a detached working
tree. I upgraded git and checkout worked, but it refused to do git pull.

Ah well.

I'm not too sure about keeping the .git directory itself in Dropbox.
Googling it, it seems lots of people do it without any problems, but
there are some reports of it going haywire.

On Thu, Jan 14, 2010 at 01:39:10PM +0800, Tay Ray Chuan wrote:
> Hi,
> 
> On Thu, Jan 14, 2010 at 7:57 AM, chombee <[email-masked]> wrote:
> > My idea is that I keep my .git folder safely outside of my Dropbox
> > folder, but my git repository has a detached working tree that is
> > located in the Dropbox folder. On machine B it would be the same setup.
> > So the two machines each have their own clone of the git repo and these
> > are synchronised by git push and git pull with a 'central' remote repo.
> > But the two clones share the same working tree, or more accurately their
> > working trees are synced by Dropbox.
> >
> > The working tree is just files, I don't see how it's different from
> > Dropbox syncing any other files. Dropbox and git ought not to collide in
> > any way. So this should work fine shouldn't it?
> 
> Your changes in git (like new commits) won't be synced.
> 
> -- 
> Cheers,
> Ray Chuan
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to [email-masked]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

On Thu, Jan 14, 2010 at 05:19:08AM -0800, Geoffrey Lee wrote:
> On Wed, Jan 13, 2010 at 9:39 PM, Tay Ray Chuan <[email-masked]> wrote:
> > On Thu, Jan 14, 2010 at 7:57 AM, chombee <[email-masked]> wrote:
> >> My idea is that I keep my .git folder safely outside of my Dropbox
> >> folder, but my git repository has a detached working tree that is
> >> located in the Dropbox folder. On machine B it would be the same setup.
> >> So the two machines each have their own clone of the git repo and these
> >> are synchronised by git push and git pull with a 'central' remote repo.
> >> But the two clones share the same working tree, or more accurately their
> >> working trees are synced by Dropbox.
> >>
> >> The working tree is just files, I don't see how it's different from
> >> Dropbox syncing any other files. Dropbox and git ought not to collide in
> >> any way. So this should work fine shouldn't it?
> >
> > Your changes in git (like new commits) won't be synced.
> 
> You have to sync your .git directory. For example, using your setup,
> if you switch branches on Machine A, your working directory will
> change on Machine B, but Machine B will still think it's on the
> previous branch. This scenario would cause a lot of problems for Git.
> 
> There shouldn't be any problems with placing your entire repository
> (working tree and .git directory) inside Dropbox as long as you only
> use one computer at a time.
> 
> -Geoffrey Lee
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to [email-masked]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html