I have seen other similar post and answers. But my situation is more restricted as following:
Branch repo/A has child branches repo/B and repo/C. C pushed/merged new foo.c to A. Then B pull/merged to get foo.c then pushed/merged other changes. Let's say B's revision changed from 10 to 11 after the pull. Now everything is messed up for branch B so I want B to go back to revision 10 and take as the pull never happened.
So I looked through those post and figured out to solve the problem by following step:
- svnadmin dump $(repo/B) -r 0:10 | svnadmin load $(newRepo/B)
now I want to use the original repo url so:
2.1) back up to prevent anything messing up: svnadmin copy $(repo/B) $(repo/B_backup)
2.2) copy over new: svnadmin copy $(newRepo/B) $(repo/B);
Now I want the UUID to be the same and I don't have the svnadmin setuuid because the svn version is 1.4. So:
3.1)Before step 1, svn info $(repo/B) to record original UUID
3.2)After step 2, open log of $(repo/B) somewhere then copy the original UUID to it
Now $(repo/B) has revision 10 and same UUID.
My question is
After all this done, will branch A and C change also?
Is there anything missing in my solution cause I don't want to mess it up again? Or better way to do so?
Thanks