Byłem w trakcie robienia rekursywnego dodawania / zatwierdzania svn i dołączono folder, który nie miał odpowiednich właściwości ignorowania. Mam teraz około 100 przesłanych plików binarnych w wersji, ale jeszcze nie popełniłem.
Jak najłatwiej to cofnąć bez usuwania wszystkich dokumentów?
revert
kwestię - bez określonej wersji cofa wszelkie zmiany, które wystąpiły od ostatniego pobrania, w tym dodawanie / usuwanie zmian w harmonogramie dla określonych plików.svn revert
usuwa również nowo dodane zmiany w kopii roboczej, przywracając ostatniąHEAD
wersję. Usunąłem moją opinię, ale nadal uważam, że ostrzeżenie jest ważne.svn rm --keep-local folder_name
Uwaga: W svn 1.5.4 svn rm usuwa niewersjonowane pliki, nawet jeśli podano opcję --keep-local. Aby uzyskać więcej informacji, zobacz http://svn.haxx.se/users/archive-2009-11/0058.shtml .
źródło
Wypróbuj
svn revert filename
każdy plik, który nie jest potrzebny i nie został jeszcze zatwierdzony. Lub alternatywnie wykonajsvn revert -R folder
dla problematycznego folderu, a następnie ponownie wykonaj operację z poprawną konfiguracją ignorowania.Z dokumentacji:
źródło
svn revert
. Żadna z odpowiedzi tutaj nie wspomina o tym, że lokalne zmiany zostaną utracone przez przywrócenie.Pełny proces (pakiet svn dla systemu Unix):
Sprawdź, czy plików nie ma w SVN:
Dodaj wszystkie (w tym pliki ignorowane):
Usuń flagę „Dodaj” do wszystkich plików * Ignoruj *:
Edytuj ignorowanie svn w folderze
Dodaj dwie linie singli z następującymi:
Sprawdź, które pliki zostaną przesłane i zatwierdź:
źródło
Dla plików -
svn revert filename
Dla folderów -
svn revert -R folder
źródło