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.