Posts Tagged ‘mergeinfo’

Problemy z svn merge reintegrate

Author: Mateusz Kubiczek (madmatt) | kwiecień 6th, 2009

SVN 1.5 posiada bardzo miłe wsparcie dla tworzenia gałęzi w repozytorium oraz nanoszania zmian wykonanych tam spowrotem do trunka. Wyklikanie tego w tortoiseSVN zajmuje parę minut (o tym w następnej notce). A przynajmniej powinno – niestety bardzo często dostaję komunikat:

svn: Cannot reintegrate from 'url://feature-branch' yet:
Some revisions have been merged under it that have not been merged
into the reintegration target; merge them first, then retry.

Wiadomość nie podsuwa oczywistego rozwiązania. Pierwszą rzeczą którą sprawdziłem było ponowne uaktualnienie mojej gałęzi trunkiem, ale to nie pomogło.
Rozwiązanie problemu znalazłem na blogu Submerged. Można tam znaleźć dokładne wyjaśnienie, skąd ten błąd (a także kilka ciekawych informacji o samym SVN – polecam). Tutaj tylko szybkie rozwiązanie, które mi zawsze pomaga (operacje wykonujemy na gałęzi):

  • W korzeniu kopii roboczej wpisujemy:

svn propget svn:mergeinfo -R

  • Powinniśmy dążyć do tego, żeby svn:mergeinfo istniało tylko dla korzenia kopii roboczej, np.:

. – /branches/Foo:2055-2223

  • Usuwamy kolejno własność na wszystkich katalogach w głównym katalogu kopii roboczej:

svn propdel svn:mergeinfo -R nazwa_katalogu

  • Znowu robimy svn propget svn:mergeinfo -R. Jeżeli widzimy tylko katalog główny (np /trunk, albo /branches/foo) to wszystko jest ok.

Możemy teraz spróbować ponownie zreintegrować naszą gałąź. Powinno działać.