Udostępnij za pośrednictwem


Cofnij zmiany

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Visual Studio 2019 | Visual Studio 2022

Jeśli chcesz cofnąć zmiany w repozytorium Git, najpierw zdecyduj, jakiego typu zmiany chcesz cofnąć. Na przykład możesz chcieć:

  • Odrzuć niezatwierdzone zmiany w pliku, przywracając plik do ostatniej zatwierdzonej wersji. Możesz również przywrócić plik do dowolnej zatwierdzonej wersji.
  • Przywróć gałąź do poprzedniego stanu, resetując ją do poprzedniego commitu.
  • Cofnij zmiany wprowadzone przez udostępnione zatwierdzenie, tworząc nowe zatwierdzenie, które odwraca zmiany. Ponieważ takie podejście nie spowoduje ponownego zapisania istniejącej historii zatwierdzeń, jest odpowiednie do odwrócenia zmian wprowadzonych przez zatwierdzenia, które zostały wypchnięte i są używane przez inne osoby.
  • Zmień ostatnie zatwierdzenie, aby zmodyfikować jego zawartość lub komunikat. Aby uzyskać więcej informacji, zobacz Jak zaktualizować ostatnie zatwierdzenie.
  • Rozwiąż problem wprowadzony w poprzednim zatwierdzeniu, tworząc nowe zatwierdzenie , które zawiera poprawkę. Aby uzyskać więcej informacji, zobacz Jak utworzyć zatwierdzenie.

W tym artykule omówiono sposób wykonywania następujących zadań:

  • Odrzucanie niezatwierdzonych zmian w pliku
  • Przywracanie gałęzi do wcześniejszego stanu
  • Cofanie zmian wprowadzonych przez udostępnione zatwierdzenie

Wymagania wstępne

Kategoria Wymagania
Dostęp do projektu Członek projektu .
uprawnienia — Wyświetlanie kodu w projektach prywatnych: co najmniej dostęp na poziomie Podstawowym.
— Klonowanie lub współtworzenie kodu w prywatnych projektach: członkostwo w grupie zabezpieczeń Współautorzy lub odpowiednie uprawnienia w projekcie.
— Ustaw uprawnienia gałęzi lub repozytorium: Zarządzanie uprawnieniami dla gałęzi lub repozytorium.
- Zmień gałąź domyślną: Edytuj zasady uprawnienia dla repozytorium.
— Zaimportuj repozytorium: członek grupy zabezpieczeń Administratorzy projektów lub uprawnienia na poziomie projektu Git Utwórz repozytorium ustawione na Dozwolone. Aby uzyskać więcej informacji, zobacz Ustawianie uprawnień repozytorium Git.
Usługi Repozytoria włączone.
Narzędzia Opcjonalny. Użyj poleceń az repos: Azure DevOps CLI.

Uwaga

W projektach publicznych użytkownicy z dostępem Stakeholder mają pełny dostęp do usługi Azure Repos, w tym wyświetlanie, klonowanie i współtworzenie kodu.

Kategoria Wymagania
Dostęp do projektu Członek projektu .
uprawnienia — Wyświetl kod: przynajmniej podstawowy dostęp.
— Klonowanie lub współtworzenie kodu: członek grupy zabezpieczeń Współtwórców lub posiadający odpowiednie uprawnienia w projekcie.
Usługi Repozytoria włączone.

Odrzucanie niezatwierdzonych zmian w pliku

Jeśli wprowadziłeś zmiany w pliku, ale ich nie zatwierdziłeś, możesz użyć Git checkout, aby szybko odrzucić zmiany i przywrócić plik do jego ostatniej zatwierdzonej wersji.

Usługa Git checkout może również przywrócić plik do dowolnej zatwierdzonej wersji po określeniu identyfikatora zatwierdzenia.

Ostrzeżenie

Jeśli istnieje szansa, że będziesz chciał ponownie zastosować zmiany, które Git odrzuci, rozważ ich przechowanie.

Program Visual Studio 2022 zapewnia środowisko kontroli wersji usługi Git przy użyciu menu Git, zmian Git i menu kontekstowych w Eksploratorze rozwiązań. Program Visual Studio 2019 w wersji 16.8 oferuje również interfejs użytkownika narzędzia Team Explorer Git. Aby uzyskać więcej informacji, zobacz kartę Visual Studio 2019 — Team Explorer .

Program Visual Studio obsługuje odrzucanie niezatwierdzonych zmian w pliku przez przywrócenie pliku do ostatniej zatwierdzonej wersji.

W oknie Zmiany usługi Git zidentyfikuj plik ze zmianami, które chcesz odrzucić. Jeśli plik znajduje się w sekcji Zmiany z etapu, kliknij go prawym przyciskiem myszy i wybierz polecenie Usuń z etapu. Nieprzygotowane pliki są wyświetlane w sekcji Zmiany .

Zrzut ekranu przedstawiający opcje menu kontekstowego dla plików przygotowanych w programie Visual Studio.

Jeśli plik znajduje się w sekcji Zmiany , kliknij go prawym przyciskiem myszy i wybierz polecenie Cofnij zmiany , aby odrzucić wszystkie zmiany w pliku od ostatniego zatwierdzenia.

Zrzut ekranu przedstawiający opcje menu kontekstowego dla zmienionych plików w programie Visual Studio.

Przywracanie gałęzi do wcześniejszego stanu

Można przywrócić gałąź do poprzedniego stanu, używając Git reset, aby przywrócić gałąź do wcześniejszego zatwierdzenia. Git reset wpływa na wszystkie pliki we wszystkich katalogach gałęzi.

Usługa Git reset ma kilka opcji. Domyślną opcją jest przywrócenie gałęzi do poprzedniego zatwierdzenia, ale zachowanie wszystkich kolejnych zmian jako niezatwierdzonych zmian. Inną opcją jest przywrócenie gałęzi do poprzedniego zatwierdzenia przez odrzucenie wszystkich zmian we wszystkich plikach gałęzi od tego zatwierdzenia.

Ostrzeżenie

Nie resetuj gałęzi do zatwierdzenia przed ostatnim zatwierdzeniem, jeśli ostatnie zatwierdzenie zostało wypchnięte i udostępnione innym osobom. Spowoduje to, że historia gałęzi lokalnej nie będzie już zgodna z historią gałęzi zdalnej. Aby zapoznać się z gałęziami udostępnionymi, zobacz Cofanie zmian wprowadzonych przez zatwierdzenie udostępnione.

  1. Na pasku menu wybierz Git > View Branch History, aby otworzyć kartę Historia dla bieżącej gałęzi.

    Zrzut ekranu przedstawiający opcję Wyświetl historię gałęzi w menu Git w programie Visual Studio.

  2. Na karcie Historia dla bieżącej gałęzi kliknij prawym przyciskiem myszy zatwierdzenie, które chcesz zresetować, a następnie wybierz polecenie Resetuj > usuń zmiany (-trudne), aby zresetować gałąź do wybranego zatwierdzenia i usunąć wszystkie zmiany we wszystkich plikach gałęzi od tego zatwierdzenia. Możesz też wybrać opcję Resetuj zachowaj zmiany (--mixed)> aby zresetować gałąź do wybranego zatwierdzenia i zachować wszystkie kolejne zmiany jako zmiany niezatwierdzone.

    Zrzut ekranu przedstawiający opcję Resetuj w menu kontekstowym zatwierdzenia w oknie Historia w programie Visual Studio.

Cofnij zmiany wprowadzone przez wspólne zatwierdzenie

Zmiany wprowadzone przez zatwierdzenie można cofnąć, używając Git revert, aby utworzyć nowe zatwierdzenie, które odwraca te zmiany. Usługa Git revert nie usuwa oryginalnego zatwierdzenia. Takie podejście jest odpowiednie do cofania zmian wprowadzonych przez udostępnione zatwierdzenie, ponieważ usługa Git revert nie zmieni poprzedniej historii zatwierdzeń, a więc historie gałęzi lokalnych i zdalnych będą nadal zgodne.

  1. Na pasku menu wybierz pozycję Git View Branch History (Historia gałęzi w usłudze Git > View), aby otworzyć kartę Historia dla bieżącej gałęzi.

    Zrzut ekranu przedstawiający opcję Wyświetl historię gałęzi w menu Git w programie Visual Studio.

  2. Na karcie Historia dla bieżącej gałęzi kliknij prawym przyciskiem myszy zatwierdzenie, które chcesz przywrócić, i wybierz polecenie Przywróć , aby utworzyć nowe zatwierdzenie, które cofa zmiany wprowadzone przez wybrane zatwierdzenie.

    Zrzut ekranu przedstawiający opcję Przywróć w menu kontekstowym zatwierdzenia w oknie Historia w programie Visual Studio.

Następne kroki