Subject: Re: lineups with GIT (or dealing with directory renames)

From: Jakub Narebski <[email-masked]>
Date: Fri, 23 Jan 2009 09:25:30 -0800 (PST)

outre <[email-masked]> writes:

[...]
> I tried using "git mv" command and it somewhat solved the problem. After I
> cloned the devel line-up, I used "git rm iWeb.local iWeb.test".
> And now if I edit a file in iWeb.local and do a pull to iWeb.test this file
> gets properly updated while preserving the difference between
> the folder names. But if I add a new file to iWeb.local, and then do a pull
> I get  iWeb.local folder added together with the 
> new file to the testing line-up.
> 
> I was wondering if it is intended behaviour for GIT. And if it is may be
> someone can point me to a better way to setup two line-ups using
> GIT.

I know nothing about line-ups, but the behaviour wrt. wholesame
directory renames is _known_ behavior of git. If one side renames
directory, and other side creates new files in old-name directory,
the old-name directory gets recreated during merging.

I wrote _known_ and not _intendend_ because this can be changed;
there were some patches on git mailing list (I don't know what
happened to them; I think the development stalled) that added
detecting wholesame rename of directories, based on heuristic
content and filename similarity based detection of renames for
individual files.

-- 
Jakub Narebski
Poland
ShadeHawk on #git