On Wednesday, May 14, 2014 9:19:37 PM UTC+2, Moataz Elmasry wrote:
> Aha that would be exactly what I'm looking for, how can one define the 
> first commit in mainrepo as a merge commit of several repositories. Only 
> using graft point with one child and several parents does not allow me to 
> follow a file history from main project through the older projects

Hm, let's say that the first commit in the mainRepo is abc123. It's 
basically just a commit where a thousand files are added.

You then do the grafting. The commit abc123 is then rewritten to not only 
be thousand addeded files, but also a thousand removed files, as the files 
are being moved from their old-structure location. 

Git doesn't track any renames, it does rename detection upon inspection. 
Simply explained, if in a commit a file is removed, and another file is 
added which looks very similar, Git will consider this a rename in the 
moment you run git log. Of course it doesn't work perfectly in all cases, 
and I assume that graft points is one of these. Before you make any 
conclusions, make sure to finalize the grafts as explained 
here<http://thomasrast.ch/git/git-svn-conversion.html> (good 
read for anyone doing grafting):

git filter-branch --tag-name-filter cat -- --all

Also keep in mind that you have to use git log *--follow* to view the 
history of a file across renames.

You received this message because you are subscribed to the Google Groups "Git 
for human beings" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to