Cofnięcie zatwierdzenia w TortoiseSVN


99

Przez przypadek popełniłem kilka plików (dziesiątki plików w różnych folderach). Jaki jest najłatwiejszy, najczystszy (i najbezpieczniejszy!) Sposób „cofnięcia” tego zatwierdzenia bez konieczności usuwania plików z mojego katalogu roboczego?

Odpowiedzi:


151

Przejdź do Pokaż ekran dziennika , wybierz wersję, którą chcesz cofnąć, kliknij ją prawym przyciskiem myszy i wybierz Cofnij zmiany z tej wersji , spowoduje to odwrócenie scalenia .


8
Tego się spodziewałem, ale nie było żadnego znaku w najnowszym wydaniu żółwia
Anthony Main

39
Nie zapomnij o zatwierdzeniu później, ponieważ po prostu łączy się lokalnie.
pihentagy

5
Przed wykonaniem tej czynności zaktualizuj kopię roboczą, w przeciwnym razie nic się nie dzieje.
Florian Brucker

1
Dokumenty dotyczące tej procedury: tortoisesvn.net/docs/release/TortoiseSVN_en/…
Costa

TortoiseSVN> Pokaż dziennik> <wybierz swoją starą revesion>> Przywróć do tej wersji tortoisesvn.net/docs/nightly/TortoiseSVN_en/...
Satyendra

15

Może być konieczne użycie wiersza poleceń, ale można użyć polecenia scalania SVN i określić wersje w odwrotnej kolejności, aby skutecznie cofnąć zatwierdzenie. Zakładając, że twój zły commit to r1123, zrobiłbyś:

svn merge -r1123:1122 <url of your working copy>

Nic się nie zmienia, kiedy robię to w ten sposób: svn merge -r 1880: 1879 server / myproject / branches / problem42 Próbowałem zarówno z spacją jak to "-r 1880: 1879", jak i bez spacji jak to "-r1880: 1879". Jeśli później uruchomię "svn st", nic się nie zmieniło.
neoneye

2

Możesz przywrócić kopię roboczą do wersji sprzed zatwierdzenia. Po przywróceniu kopii roboczej po prostu zatwierdź zmiany, a skutecznie cofniesz przypadkowe zatwierdzenie.

W konkretnym przypadku takim jak twój prawdopodobnie sprawdziłbym wersję, którą chciałem przywrócić do nowej kopii roboczej, a następnie zatwierdziłbym kopię roboczą do wersji głównej.


4
Czy nie oznacza to, że Twoja wersja jest nieaktualna i wymaga aktualizacji przed zatwierdzeniem? Myślę, że musisz scalić poprzednią wersję, a nie tylko zaktualizować do starej.
Mnebuerquo

Ta strategia zakłada również, że złe zatwierdzenie jest poprzednim. Możesz cofnąć niektóre zmiany, które wydarzyły się jakiś czas temu, bez cofania ich wszystkich.
jpaugh
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.