How can I reintegrate an already reintegrated and rolled-back branch in SVN

De openkb
Aller à : Navigation, rechercher

Sommaire

Questions

We did following ugly thing:

<img src="https://i.stack.imgur.com/qjVOP.png" alt="svn history">

So, how can we achieve another reintegrate?

What did I try so far?

    • well, the obvious merge - which fails brutally!
    • creating a patch and apply it to trunk (which should work, as it diffs the files with no svn only...)
    • creating another branch @ trunk r101 and merge all the changes from first branch - fails brutally :)
  edit:   

merge-infos for trunk do not show any merged revisions of the desired branch (as I ve rolled them back with r101)

Answers

http://stackoverflow.com/questions/4628971/undo-reverse-merge-in-subversion-or-double-reverse-merge/4629250#4629250 http://stackoverflow.com/questions/4628971/undo-reverse-merge-in-subversion-or-double-reverse-merge/4629250#4629250

I d recommend trying to just rollback r101.

  EDIT   

Okay, let s say your repo is set up as follows:

svnadmin create mergetest
svn co file:///home/adam/tmp/mergetest mergetest-co
cd mergetest-co/
svn mkdir trunk
svn mkdir branches
svn ci -m "Initial setup"

echo "Hello, world!" > trunk/test
svn add trunk/test
svn ci -m "Initial trunk changes"

svn cp file:///home/adam/tmp/mergetest/trunk file:///home/adam/tmp/mergetest/branches/branch -m "Creating branch"
svn up

echo "Change on trunk." >> trunk/test
svn ci -m "Change on trunk"

svn merge file:///home/adam/tmp/mergetest/trunk branches/branch
svn ci -m "Merge from trunk"

echo "Change on branch." >> branches/branch/test
svn ci -m "Change on branch"

svn up
svn merge --reintegrate file:///home/adam/tmp/mergetest/branches/branch trunk
svn ci -m "Reintegrate merge" # Revision 7                                                                                                                                          

svn merge -c -7 trunk trunk
svn ci -m "Undoing reintegration" # Revision 8

At this point, undoing the undo works: svn merge -c -8 trunk trunk. Also, reintegrating again works: svn merge --reintegrate file:///home/adam/tmp/mergetest/branches/branch trunk. Since your reintegrate was rolled back, there should be no problem with simply reintegrating again. If it doesn t work, my setup must not match your setup, so some other detail must be the problem.

Source

License : cc by-sa 3.0

http://stackoverflow.com/questions/5933580/how-can-i-reintegrate-an-already-reintegrated-and-rolled-back-branch-in-svn

Related

Outils personnels
Espaces de noms

Variantes
Actions
Navigation
Outils