Zapisywanie pracy z zatwierdzeniami

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

Visual Studio 2019 | Visual Studio 2022

Usługa Git nie wykonuje automatycznie migawek swojej pracy podczas modyfikowania plików w repozytorium. Informujesz usługę Git o zmianach w plikach, które chcesz przechwycić w migawce, inscenując określone zmiany. Po przejściu przejściowym zapisz migawkę, tworząc zatwierdzenie.

Ten artykuł zawiera procedury dla następujących zadań:

  • Jak usługa Git śledzi zmiany
  • Co znajduje się w zatwierdzeniu
  • Jak przygotować zmiany
  • Jak utworzyć zatwierdzenie
  • Jak zaktualizować ostatnie zatwierdzenie

Aby zapoznać się z omówieniem przepływu pracy usługi Git, zobacz Samouczek usługi Azure Repos Git.

Jak usługa Git śledzi zmiany

Podczas pracy w repozytorium usługa Git śledzi zmiany we wszystkich śledzonych plikach. Śledzone pliki to pliki, które są obecnie przygotowane lub są uwzględnione w poprzednim zatwierdzeniu. Usługa Git oddziela śledzone pliki do trzech kategorii:

  • Niezmodyfikowane pliki — pliki, które nie zostały zmienione od czasu ostatniego zatwierdzenia.
  • Zmodyfikowane pliki — pliki, które zostały zmienione od ostatniego zatwierdzenia, ale nie zostały przygotowane do następnego zatwierdzenia.
  • Pliki etapowe — pliki, które zostały zmienione od ostatniego zatwierdzenia i przygotowane do następnego zatwierdzenia.

Zrzut ekranu przedstawiający cykl życia plików w repozytorium między trzema stanami.

Podczas tworzenia zatwierdzenia do migawek są używane tylko pliki etapowe i niezmodyfikowane pliki. Nieotagowane zmiany w zmodyfikowanych plikach są przechowywane, ale migawka zawiera niezmodyfikowaną wersję tych plików. Usługa Git nie śledzi zmian w nowych plikach ani nie dołącza nowych plików do migawki do momentu ich przygotowania.

Zatwierdzenia są tworzone w lokalnym repozytorium Git. Każde zatwierdzenie nie musi być doskonałe i może potrwać kilka zatwierdzeń w celu osiągnięcia zamierzonej zmiany. Utwórz zatwierdzenia podczas pracy, a po zakończeniu możesz wypchnąć zatwierdzenia do repozytorium zdalnego, aby udostępnić swoją pracę innym osobom.

Co znajduje się w zatwierdzeniu

Każde zatwierdzenie zawiera następujące informacje:

  • Migawka wszystkich śledzonych plików w repozytorium w momencie zatwierdzenia. Migawka nie jest różnicą między zatwierdzeniami, chociaż usługa Git używa migawek do obliczenia różnicy. Migawki umożliwiają szybkie przełączanie między gałęziami i obsługę scalania gałęzi.
  • Odwołanie do zatwierdzeń nadrzędnych. Większość zatwierdzeń ma jeden element nadrzędny, ale następne zatwierdzenie po scaleniu gałęzi zawiera wiele elementów nadrzędnych, a pierwsze zatwierdzenie w repozytorium nie ma żadnego.
  • Komunikat opisujący zmiany w zatwierdzeniu. Podczas tworzenia zatwierdzenia należy wprowadzić komunikat.

Usługa Git używa migawek i odwołań nadrzędnych każdego zatwierdzenia, aby zachować pełny rekord programowania w repozytorium. Aby zbadać zmiany w kodzie, możesz przejrzeć historię repozytorium Git.

Jak przygotować zmiany

Aby utworzyć migawkę zatwierdzenia:

  • Przygotuj nowe pliki , aby poinformować usługę Git o tym, że mają one zostać dodane do migawki, i chcesz, aby usługa Git śledziła zmiany w tych plikach w przyszłości.
  • Przeprowadź edycję plików , aby poinformować usługę Git o potrzebie zmodyfikowanej wersji pliku w migawce, a nie w niezmodyfikowanej wersji pliku.
  • Przygotuj usunięte pliki , aby poinformować usługę Git o tym, że mają zostać usunięte z migawki i nie będą już śledzone.

Aby wykluczyć pliki tymczasowe, pliki dziennika lub inne pliki z migawki, możesz skonfigurować usługę Git tak, aby ignorowała określone pliki.

Uwaga

Usługa Git obsługuje interaktywne przemieszczanie edytowanych plików, dzięki czemu można wybrać etap określonych zmian w pliku. Jest to przydatna funkcja, gdy chcesz edytować różne pliki w różnych zatwierdzeniach.

Program Visual Studio 2022 zapewnia środowisko kontroli wersji usługi Git przy użyciu menu Git, zmian git i menu kontekstowych w Eksplorator 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 .

W oknie Git Changes (Zmiany usługi Git) kliknij prawym przyciskiem myszy plik w sekcji Zmiany i wybierz pozycję Stage (Etap), aby dodać go do sekcji Zmiany etapowe.

Zrzut ekranu przedstawiający opcję Zmiany w oknie

Możesz też przygotować zmieniony plik, wybierając znak plus obok pliku. Aby przygotować wszystkie zmienione pliki w folderze, wybierz znak plus obok folderu. Aby przygotować wszystkie zmienione pliki w repozytorium, wybierz znak plus w prawym górnym rogu sekcji Zmiany .

Możesz poinformować usługę Git o zignorowaniu pliku, klikając go prawym przyciskiem myszy i wybierając polecenie Ignoruj ten element lokalny lub Ignoruj to rozszerzenie. Albo polecenie tworzy plik .gitignore w repozytorium, jeśli nie istnieje, i dodaje do niego wpis. Ignorowane pliki nie będą wyświetlane w sekcji Zmiany w programie Visual Studio. Jednak plik .gitignore nie ma wpływu na śledzone pliki. Aby uzyskać informacje na temat sposobu konfigurowania usługi Git w celu ignorowania śledzonych plików, zobacz Ignoruj pliki. Aby zaoszczędzić czas, możesz pobrać szablony .gitignore dla różnych środowisk programistycznych z repozytorium GitHub gitignore .

Uwaga

Począwszy od programu Visual Studio 2022 w wersji 17.3, program Visual Studio obsługuje przejściowe częściowe zmiany w pliku. Aby uzyskać więcej informacji, zobacz Etap wiersze kodu w programie Visual Studio.

Jak utworzyć zatwierdzenie

W oknie Git Changes (Zmiany usługi Git) wprowadź komunikat opisujący wprowadzone zmiany, a następnie wybierz pozycję Commit Staged (Zatwierdzanie etapowe).

Zrzut ekranu przedstawiający link do informacji o zatwierdzeniu w programie Visual Studio.

Wybierz link zatwierdzenia, aby uzyskać szczegółowe informacje o zatwierdzeniu.

Zrzut ekranu przedstawiający link szczegółów zatwierdzenia do okna

Uwaga

Jeśli wszystkie zmiany nie są przygotowane, możesz pominąć przemieszczanie i bezpośrednio zatwierdzić, wybierając pozycję Zatwierdź wszystko.

Zrzut ekranu przedstawiający opcję

Jak zaktualizować ostatnie zatwierdzenie

Usługa Git obsługuje zmianę przygotowanych plików lub komunikatów ostatniego zatwierdzenia. Ta operacja zastępuje ostatnie zatwierdzenie nowym zatwierdzeniem, które łączy pliki etapowe zarówno z zatwierdzeń, jak i używa nowego komunikatu zatwierdzenia. Zmiana zatwierdzenia jest przydatna, jeśli nie pamiętasz etapu pliku lub ostatni komunikat zatwierdzenia ma literówkę.

Ostrzeżenie

Nie zmieniaj jeszcze wypchniętego zatwierdzenia, ponieważ spowoduje to problemy z synchronizacją z repozytorium zdalnym. W przypadku wypchniętego zatwierdzenia użyj jednej z następujących strategii:

  • Utwórz i wypchnij kolejne zatwierdzenie, które rozwiązuje problemy spowodowane przez poprzednie zatwierdzenie.
  • Cofnij poprzednie zatwierdzenie, które zostało wypchnięte, za pomocą polecenia , git revert aby utworzyć nowe zatwierdzenie, które przywraca wszystkie zmiany wprowadzone przez poprzednie zatwierdzenie. Następnie wypchnij nowe zatwierdzenie.

W oknie Zmiany usługi Git opcjonalnie przygotuj co najmniej jeden plik, wprowadź komunikat zatwierdzenia, wybierz pozycję Zmień, a następnie wybierz pozycję Zatwierdzenie przygotowane.

Zrzut ekranu przedstawiający opcję

Okno Git Changes (Zmiany usługi Git) obsługuje zmianę komunikatu zatwierdzenia, plików przygotowanych lub obu tych elementów. Po wybraniu pozycji Zmień zostanie wyświetlony identyfikator SHA poprzedniego zatwierdzenia.

Następne kroki