> 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
> 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/ |
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.
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 email@example.com.
To unsubscribe from this group, send email to
For more options, visit this group at