2014-12-18 14 views
5

Jestem nowy w SVN.Jak rozwiązać problem z konfliktem drzew w SVN

znalazłem wiadomość konfliktu, jak pokazano poniżej:

[email protected]:~/sp/s2$ svn status 
M  Gemfile 
M  Gemfile.lock 
M  config/intializers/secret_token.rb 
D  C tmp 
     > local dir unversioned, incoming dir add upon update 
D  tmp/cache 
?  tmp/data 
D  tmp/pids 
D  tmp/sessions 
D  tmp/sockets 
Summary of conflicts: 
    Tree conflicts: 1 
[email protected]:~/sp/s2$ 

Problem wystąpił po aktualizacji przy użyciu „svn up” polecenie.

Jak naprawić ten problem?

+0

@bahrep, oops, mój błąd. Myślałem, że większość Railsów używa gita, a nie svn. – roob

+0

Duplikat http://stackoverflow.com/questions/3985504/svn-how-to-resolve-local-add-incoming-add-upon-update-on-a-folder – reinierpost

Odpowiedz

13

miałem ten problem dzisiaj, a ponieważ nie chciałem zachować bieżącą zawartość nowego wersjonowanym katalogu, proste rozwiązanie było:

svn status  # review current situation 
svn revert tmp # fix, replace tmp with right path for you 
svn status  # verify there are no conflicts any more 

Oczywiście, jeśli nie ma żadnych wątpliwości, że istniejące katalog bez wersji zawiera coś cennego, najpierw skopiuj go gdzie indziej (i ewentualnie dodaj do SVN po przywróceniu, jeśli pliki te powinny być pod kontrolą wersji).

+0

świetna odpowiedź, ale chcę zachować nadchodzące zmiany. Masz pomysł, jak zrobić coś przeciwnego i zastąpić plik lokalny? – SM3RKY

+1

@ SM3RKY Co masz na myśli? To spowoduje nadpisanie wszelkich lokalnych zmian (dlatego sugeruję skopiowanie czegoś cennego gdzie indziej). Zwykła aktualizacja svn powinna jak zwykle uzyskać żądaną wersję. – hyde

4

Komunikat błędu na wyjściu stanu mówi wszystko:

> local dir unversioned, incoming dir add upon update 

Oznacza to, że trzeba było tmp katalogu utworzonego w kopii roboczej przy użyciu mkdir ale nie nie dodać go do repozytorium (jeszcze) , chociaż prawdopodobnie już go dodano: lokalnie przy użyciu svn add. Po uruchomieniu svn update, z repozytorium jest wypisywany inny katalog tmp, który nadpisze twój katalog tmp, chyba że rozwiążesz ten problem.

Jako ogólna zasada, staraj się nie pracować nad tymi samymi częściami projektu w jednym odgałęzieniu/pniu z innymi ludźmi, ponieważ w końcu doprowadzą do konfliktu głowy z niespotykanymi proporcjami.

Kolejne rozdziały SVNBook to musi przeczytać:

Powiązane problemy