Chcę cofnąć zmiany z jednego z moich kont. W menu kontekstowym danej listy zmian prawym przyciskiem myszy dostępne są dwie opcje:
- Wycofywanie ...
- Cofnij przesłaną listę zmian
Jaka jest różnica między tymi dwoma? W jakich sytuacjach powinienem użyć jednego z nich?
Odpowiedzi:
Obie te operacje przywracają zestaw plików do poprzedniego stanu i są zasadniczo szybszymi, bezpieczniejszymi sposobami cofania błędów niż użycie
p4 obliterate
polecenia (i nie potrzebujesz dostępu administratora, aby z nich korzystać).W przypadku „Cofania ...” może to być dowolna liczba plików, nawet cały skład. Możesz nakazać jej przywrócenie do określonej wersji, listy zmian lub etykiety. Pliki są przywracane do stanu, w jakim były w momencie tworzenia tej wersji, listy zmian lub etykiety.
W przypadku „Back Out Submitted Changelist #####” operacja przywracania jest ograniczona do plików przesłanych na liście zmian #####. Pliki te są przywracane do stanu, w jakim były przed przesłaniem tej listy zmian, pod warunkiem, że od tego czasu nie wprowadzono żadnych zmian w tych plikach. Jeśli w którymkolwiek z tych plików dokonano kolejnych zmian, Perforce poinformuje, że pliki te są nieaktualne. Będziesz musiał zsynchronizować z wersją głowy, a następnie rozwiązać różnice. W ten sposób nie blokujesz przypadkowo żadnych zmian, które faktycznie chcesz zachować.
Obie operacje polegają zasadniczo na przesłaniu starych wersji jako nowych wersji. Kiedy wykonujesz „Cofanie ...”, przywracasz pliki do stanu, w jakim były w określonym momencie , niezależnie od tego, co się z nimi stało. Wykonując polecenie „Wycofaj ...”, próbujesz cofnąć zmiany dokonane w określonym momencie , zachowując zmiany, które nastąpiły od tego czasu.
źródło
Odwróć przesłanie listy zmian
Nie można cofnąć pomyślnego przesłania listy zmian, ale można cofnąć wcześniej przesłane zmiany na dwa sposoby:
Wycofanie przywraca plik lub zestaw plików z powrotem do określonej listy zmian, daty lub zmiany. Wszelkie zmiany dokonane po tym czasie nie są zachowywane. Wycofać się usuwa określone zmiany dokonane przy danej liście zmian, dacie lub rewizji, ale pozwala użytkownikowi zachować zmiany wprowadzone w kolejnych wersjach.
Szczegółowe informacje można znaleźć na stronie https://www.perforce.com/perforce/r13.1/manuals/p4v/Working_with_changelists.html
źródło
Wycofanie przywraca lub cofa nasze zmiany. W ten sposób P4 cofa zmiany na liście zmian (domyślnej lub nowej) w naszym lokalnym obszarze roboczym. Następnie musimy przesłać / zatwierdzić tę listę zmian wycofanych, podobnie jak inne listy zmian. Druga część jest tutaj ważna, ponieważ nie wycofuje automatycznie listy zmian na serwerze, musimy przesłać listę zmian (co ma sens po tym, jak to zrobisz, ale początkowo zakładałem, że robi to automatycznie).
Jak zauważyli inni, Cofanie ma większe uprawnienia - może przywracać zmiany do określonej daty, listy zmian lub wersji #
źródło
Cofnij ... poprosi cię o wybranie folderu do wycofania, tzn. Będzie działał na określonych folderach i możesz wycofać do etykiet, list zmian lub dat. Cofnij działa na plikach na określonych listach zmian.
źródło
Wyjaśniam to użytkownikom porównując listy zmian Perforce ze stosem (ze struktur danych).
Wycofanie usuwa jeden element z dowolnego miejsca na stosie.
Wycofanie usuwa n przedmiotów z góry stosu.
źródło
Najprościej mówiąc, różnica polega na wielu:
Kiedyś zapominałem, który z nich jest, i musiałem to wielokrotnie sprawdzać. Aby rozwiązać ten problem, wyobraź sobie, że cofasz się o kilka obrotów, a mam nadzieję, że fakt, że cofanie jest liczbą mnogą, pomoże ci (i mnie!) Zapamiętać, który z nich jest który. Wycofanie brzmi dla mnie „mniej mnogiej” niż wycofanie . Wyobraź sobie wycofywanie się z jednego miejsca parkingowego.
Zatem mnemonik to:
Mam nadzieję, że to pomoże!
źródło