On Tuesday, May 13, 2014 4:16:14 PM UTC+2, Moataz Elmasry wrote: 
> Is it possible to build this relation, for example using git branch-filter 
> --tree-filter? lets say the last commit in svn/project1/subproject1 is x, 
> while this project was moved under 
> svn/mainproject/trunk/project1/subproject1/ in commit y, how can I build 
> this relation?

I think this should be possible. Try focusing on one project at a time, 
probably easier to get started this way. 

So you have already created git-svn clone of project1/subproject1 the way 
it was in the old structure. So far so good, now you want to append the 
history of subproject1 in the new structure.

You start off with the big mainProject trunk. You then want to slice out 
everything of this project but subproject1. First make a clone, and then 
use filter-branch like this:

# make a copy of the big project you can morph into being just subproject1 repo:

git clone --no-hardlinks mainProject-git-svn-clone subproject1

cd subproject1

git filter-branch --prune-empty --subdirectory-filter _Project1/subproject1 HEAD

# wait till it's done, and you should have the latest contents of subprojec1 in 
the current dir

git remote add older-stuff ../subproject1-older

git fetch older-stuff

Now you can start grafting together old and new stuff. Use gitk or git log 
to get a sense of where the graft points should be. The downside of this is 
that filter-branch will only bring the current branch (trunk) along for the 
ride, so if you want to keep any other branches you'll have to do them 
separately and graft them in as well.

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