> I have attached a testcase shell script.  I want to downgrade a sub-project,
> but can't figure out how.
> Here's what I tried:
>   git checkout -b downgrade-subproject-to-v2
>   git rebase -s subtree -X subtree=subproject --onto v2
> downgrade-subproject-to-v2
> But I see the contents of the subproject get spoojed out all over my
> superproject's main directory!

No takers?  Am I asking this in the wrong place?  Any advice, even
flames, is welcome.

I've tried a couple other things:

  git revert --no-edit v3

This also spoojes files into superproject.  I also tried:

  git merge -s subtree -X subtree=subproject v2

Didn't really expect that one to work, because v2 has already been
merged by virtue of v3 having been merged.  Finally I tried:

  git diff v3 v2 --src-prefix=subproject/ --dst-prefix=subproject/ |
patch -p0

This works, but it is a brute-force solution and not satisfying
because it isn't a real merge. The patch program isn't as smart as git
with merging, so it will choke on any patches made to the subproject
inside of superproject.  It also shows up incorrectly in the ancestry:
the ancestry will show that v3 has been merged, but in the tree there
is no content from v3.

Any ideas?

You received this message because you are subscribed to the Google Groups "Git 
for human beings" group.
To post to this group, send email to git-users@googlegroups.com.
To unsubscribe from this group, send email to 
For more options, visit this group at 

Reply via email to