Chciałbym cofnąć zmianę, którą ostatnio wprowadziłem w TFS. W Subversion było to całkiem proste. Jednak wydaje się to być niesamowitym bólem głowy w TFS:
Opcja 1: pobierz poprzednią wersję
- Uzyskaj ręcznie poprzednią wersję każdego pliku
- Sprawdź do edycji
- Fail - checkout (w VS2008) zmusza mnie do pobrania najnowszej wersji
Opcja 2: Uzyskaj narzędzia TFS Power Tools
- Pobierz Team Foundation Power Tools
- Wydaj polecenie wycofania z wiersza cmd
- Niepowodzenie - nie zadziała, jeśli są jakieś inne oczekujące zmiany
Opcja 3: Ręczne cofanie zmian
- ręcznie cofnij moje zmiany, a następnie zatwierdź nowy zestaw zmian
Pytanie
Jak cofnąć się do poprzedniego zestawu zmian w TFS?
Odpowiedzi:
Dużą wadą tego narzędzia jest to, że będzie chciał odświeżyć wszystko w obszarze roboczym, zanim będzie można scalić. Omówiłem ten problem, tworząc nowy obszar roboczy tylko dla wycofania, który był mapowany bezpośrednio do miejsca w drzewie źródłowym, w którym znajdowały się pliki, których dotyczy problem.
Jeśli potrzebujesz pomocy w ustaleniu, które zestawy zmian należy wycofać, narzędzie do przeglądu kodu w bezpłatnym dodatku Team Foundation Side Kicks jest bardzo pomocne.
źródło
Twoje rozwiązanie nr 1 zadziała: 1. ręcznie pobierz poprzednią wersję każdego pliku
sprawdź do edycji
Wpisz plik i zignoruj zmiany na serwerze po wyświetleniu monitu.
Przyczyną niepowodzenia jest to, że musisz mieć włączoną opcję „Pobierz najnowszą wersję elementu przy pobieraniu”. Wyłącz tę opcję, przechodząc do menu Narzędzia ... Opcje ... Kontrola źródła ... Visual Studio Tema Foundation Server i odznaczając opcję „Pobierz najnowszą wersję elementu przy pobieraniu”
Twoje zdrowie
źródło
Wycofywanie zostało przeniesione z tfpt.exe do tf.exe, narzędzia kontroli wersji Team Foundation.
źródło
Istnieją dwie opcje wycofania (cofnięcia) zestawu zmian w kontroli wersji TFS 2010. Pierwsza opcja polega na użyciu interfejsu użytkownika (jeśli masz zainstalowaną najnowszą wersję narzędzi TFS 2010 Power Tools ).
Inną opcją jest użycie aplikacji wiersza polecenia kontroli wersji TFS 2010:
Mam informacje o obu podejściach na moim blogu dostępnym tutaj: http://www.edsquared.com/2010/02/02/Rollback+Or+Undo+A+Changeset+In+TFS+2010+Version+Control.aspx
źródło
Innym sposobem, aby opcja 1 działała, jest odwrócenie kolejności kroków:
To zadziała, nawet jeśli masz ustawioną opcję Pobierz najnowsze przy kasie.
źródło
Dla odniesienia, jeśli używasz TFS 2010 , oto łącze do podręcznika Polecenie wycofywania (Team Foundation Version Control) .
Aby wycofać określony zestaw zmian , przejdź do wiersza polecenia programu Visual Studio (2010) , przejdź do katalogu obszaru roboczego TFS i wpisz polecenie:
gdzie
12345
jest twój numer zestawu zmian. Następnie pokaże Ci dziennik tego, co zrobił i będziesz musiał rozwiązać konflikty scalania.źródło
Ach, właśnie znalazłem ten artykuł CodePlex o używaniu TFPT.exe (elektronarzędzie) do przywrócenia zestawu zmian.
Mam nadzieję, że to ci pomoże.
źródło
Brak opcji wycofywania jest w rzeczywistości cechą TFS;)
Aby cofnąć zmiany:
A teraz wszystkie pośrednie zestawy zmian przed przywróceniem są również zapisywane! Co za wspaniała funkcja!
źródło
Jeśli wykonałeś 1 rejestrację i chcesz to po prostu cofnąć, jest z nim powiązany zestaw zmian #. Zrób historię w folderze, o którym mowa, aby zobaczyć zły zestaw zmian. Otwórz go, aby zobaczyć szczegóły (wszystkie zmienione pliki itp.).
Uważam, że możesz przywrócić lub cofnąć zestaw zmian z tego ekranu, ale mój program Visual Studio po prostu się zawiesił, gdy próbowałem to zrobić. / westchnienie - zdecydowanie podzielam twój ból.
Gdzie mogę zdegradować TFS na tej stronie?
źródło
Myślę, że Team Foundation Power Tools jest drogą do zrobienia. Jeśli istnieją oczekujące zmiany, możesz przenieść je do zestawu półek, a następnie cofnąć lub sprawdzić wszystkie oczekujące zmiany przed uruchomieniem polecenia wycofania. Więcej informacji można znaleźć pod adresem http://www.codeplex.com/VSTSGuidance/Wiki/View.aspx?title=How%20to%20undo%20a%20check-in&referringTitle=Source%20Control%20Practices%20at%20a%20Glance .
źródło
Ben Scheirman - okno dialogowe Changeset Details (Szczegóły zestawu zmian) nie ma funkcji wycofywania zmian.
źródło
Inną opcją jest TFSPlus . Ten dodatek do programu Visual Studio dodaje (między innymi) polecenie Pobierz tę wersję do okna historii. Jeśli masz wyewidencjonowany plik, zastąpi go tą wersją. Jeśli później dokonasz odprawy, skutecznie cofniesz do tej wersji.
Działa jednak na pojedynczych plikach zamiast na całych zestawach zmian.
źródło
używanie narzędzi TFS to najlepszy sposób http://rajputyh.blogspot.com/2008/08/change-set-rollback-using-tfs-power.html
źródło
Pobierz określoną wersję
Z listy rozwijanej Typ wersji wybierz opcję Typ jako zestaw zmian
Użyj przycisku Zestaw zmian ..., aby znaleźć swój zestaw zmian lub po prostu wpisz, jeśli znasz ten numer.
Po uzyskaniu określonego zestawu zmian.
Sprawdzić
Zameldować się
źródło
Żadne z tych rozwiązań nie zadziałało dla mnie Rozwiązanie Dave Robertsa było najbliższe temu, co faktycznie pracowałem. Nie mam włączonej opcji Pobierz najnowszą wersję elementu przy pobieraniu, jednak wydaje się, że jest to polityka serwera.
Moim rozwiązaniem jest pobranie pliku do edycji, pobranie określonej wersji, a następnie, gdy zostanie wykryty konflikt, użyj narzędzia scalania (i ręcznie nie scal żadnych zmian), aby plik był w takim stanie, w jakim był.
Zamierzałem porównać z konkretną wersją i skopiować cały plik, a następnie po prostu wkleić go na starym.
Mimo to powinien istnieć prostszy sposób na zrobienie tego!
źródło
Powyższe rozwiązanie dotyczy TFS2008. TFS2010 ma wbudowaną funkcję wycofywania zmian. szczegóły w tym artykule.
źródło
Zainstaluj najnowszą wersję narzędzi TFS Power Tools (sierpień 2011 r.) I wystarczy kliknąć prawym przyciskiem myszy zbiór zmian i wybrać „Wycofaj cały zestaw zmian”. To nie jest dużo łatwiejsze niż to.
Jest dostępny tutaj: http://visualstudiogallery.msdn.microsoft.com/c255a1e4-04ba-4f68-8f4e-cd473d6b971f
Jest to wskazane w sekcji Rozszerzenia Team Explorer na powyższej stronie:
źródło