Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Visual Studio 2019 | Visual Studio 2022
Usługa Git używa metadanych zatwierdzenia, takich jak linki nadrzędne , szczegóły autora i znaczniki czasu, aby śledzić historię zmian w repozytorium. Możesz przejrzeć historię usługi Git, aby dowiedzieć się, kiedy pliki zostały zmienione, kto je zmienił i jakie zmiany zostały wprowadzone.
Gdy ludzie tworzą i scalają gałęzie funkcji w gałęzi docelowej przy użyciu żądań ściągnięcia, historia programowania gałęzi docelowej może nie być prostą linią chronologiczną. Dlatego podczas przeglądania historii zmian w pliku w gałęzi docelowej należy pamiętać, że kolejność zatwierdzeń ma wpływ na strategię scalania i datę scalania, a nie tylko oryginalną datę zmian. Na przykład najnowsze zatwierdzenie w main gałęzi może wprowadzić zmianę, która została wprowadzona kilka tygodni temu w gałęzi funkcji, która została tylko scalona z main gałęzią przy użyciu scalania trzykierunkowego.
W tym artykule omówiono sposób wykonywania następujących zadań:
Jeśli chcesz dowiedzieć się, jak i kiedy wystąpiła określona zmiana pliku, może być konieczne porównanie różnych wersji tego samego pliku z różnych zatwierdzeń, prawdopodobnie w różnych gałęziach.
Witryna projektu zespołowego usługi Azure DevOps umożliwia porównanie dwóch wersji tego samego pliku z zatwierdzeń w tej samej gałęzi, ale nie obsługuje porównywania wersji plików między gałęziami.
W przeglądarce internetowej otwórz projekt zespołowy organizacji usługi Azure DevOps. W widoku Pliki repozytorium > wybierz plik i wybierz kartę Porównaj.
Na karcie Porównanie wybierz dwa zatwierdzenia zawierające wersje plików, które chcesz porównać. Widok różnic pokazuje wszystkie nowe, usunięte lub zmodyfikowane wiersze plików.
Uwaga
Usługa GitHub umożliwia porównanie dwóch wersji tego samego pliku z różnych zatwierdzeń w różnych gałęziach. Aby porównać, dołącz adres /compare/<commit1>..<commit2> URL repozytorium GitHub, aby przejść do strony porównania. Strona porównania zawiera różnicowy widok każdego pliku, który się różni. Aby uzyskać więcej informacji na temat porównywania zatwierdzeń w usłudze GitHub, zobacz Porównanie zatwierdzeń.
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 .
Program Visual Studio umożliwia porównanie dwóch wersji tego samego pliku w tej samej gałęzi, ale nie obsługuje porównywania wersji plików między gałęziami.
W Eksplorator rozwiązań wybierz plik i wybierz pozycję Historia widoku usługi Git z menu kontekstowego pliku, aby otworzyć kartę Historia usługi Git > dla wybranego pliku.
Na karcie Historia usługi Git wybierz pozycję Porównaj z poprzednim menu kontekstowym zatwierdzenia, aby otworzyć kartę Różnice , która porównuje wybrane zatwierdzenie z poprzednim zatwierdzeniem.
Możesz też wybrać dwa zatwierdzenia i wybrać pozycję Porównaj z menu kontekstowego zatwierdzenia, aby otworzyć kartę Różnice , która porównuje dwa wybrane zatwierdzenia.
Na karcie Różnice są wyświetlane nowe, usunięte lub zmodyfikowane wiersze plików.
Program Visual Studio 2019 zapewnia środowisko kontroli wersji usługi Git przy użyciu menu Git, zmian git i menu kontekstowych w Eksplorator rozwiązań.
Program Visual Studio umożliwia porównanie dwóch wersji tego samego pliku w tej samej gałęzi, ale nie obsługuje porównywania wersji plików między gałęziami.
W Eksplorator rozwiązań wybierz plik i wybierz pozycję Historia widoku usługi Git z menu kontekstowego pliku, aby otworzyć kartę Historia usługi Git > dla wybranego pliku.
Na karcie Historia usługi Git wybierz pozycję Porównaj z poprzednim menu kontekstowym zatwierdzenia, aby otworzyć kartę Różnice , która porównuje wybrane zatwierdzenie z poprzednim zatwierdzeniem.
Możesz też wybrać dwa zatwierdzenia i wybrać pozycję Porównaj z menu kontekstowego zatwierdzenia, aby otworzyć kartę Różnice , która porównuje dwa wybrane zatwierdzenia.
Na karcie Różnice są wyświetlane nowe, usunięte lub zmodyfikowane wiersze plików.
Program Team Explorer nie zapewnia obsługi tej funkcji.
Polecenie git diff może porównać różne wersje tego samego pliku z różnych zatwierdzeń w różnych gałęziach. Polecenie dziennika git może ułatwić zidentyfikowanie zatwierdzeń zawierających wersje plików, które chcesz porównać.
Użyj git log i określ plik, aby wyświetlić listę zatwierdzeń, które zmieniły plik:
git log <file>
Domyślnie dane wyjściowe polecenia zaczynają się od najnowszego zatwierdzenia w bieżącej gałęzi, a następnie iteruje wstecz przez zatwierdzenia modułu ancestor (niezależnie od gałęzi), postępując zgodnie z linkami nadrzędnymi w metadanych każdego zatwierdzenia.
Oto przykład danych wyjściowych polecenia git log index.html:
Dane wyjściowe pokazują, że jeden wiersz został usunięty, a jeden wiersz został dodany.
Ograniczanie danych wyjściowych dziennika usługi Git
Aby ograniczyć] zatwierdzenia, które wyświetlają git log listę, można filtrować według autora, daty, wiadomości, zmienionej zawartości i nie tylko. Na przykład:
git log --author=frank@fabrikam.com index.html Wyświetla tylko zatwierdzenia określonego autora.
git log --since="2022-5-1" Wyświetla tylko zatwierdzenia utworzone po określonej dacie.
git log --before="yesterday" Wyświetla tylko zatwierdzenia utworzone przed określoną datą względną.
git log --grep="css change" Wyświetla tylko zatwierdzenia z określonym tekstem w wiadomości.
git log -S"myVariable" Wyświetla tylko zatwierdzenia, które wprowadzają lub usuwają określony ciąg.
git log -G"myVar.*" Wyświetla tylko zatwierdzenia, które wprowadzają lub usuwają określony ciąg wyrażeń regularnych.
git log -3 Wyświetla tylko trzy ostatnie zatwierdzenia.
git log --abbrev-commit wyświetla zatwierdzenia przy użyciu skróconego identyfikatora (suma kontrolna SHA-1).
git log --oneline wyświetla listę każdego zatwierdzenia w formacie skróconym z jednym wierszem.
git log --patch index.html wyświetla listę wszystkich zatwierdzeń wraz z różnicą zmian.
Przywracanie plików
Można przywrócić określoną wersję pliku z historii usługi Git, nawet jeśli plik został edytowany, usunięty lub zmieniony w późniejszym zatwierdzeniu. Przywrócenie starszej wersji pliku nie powoduje utworzenia nowego zatwierdzenia ze zmianą. Aby zaktualizować gałąź przy użyciu przywróconej wersji pliku, należy zatwierdzić zmianę.
Witryna projektu zespołowego usługi Azure DevOps umożliwia przywrócenie wszystkich zmian wprowadzonych przez określone zatwierdzenie, ale nie obsługuje przywracania zmian do określonego pliku w ramach zatwierdzenia.
Program Visual Studio umożliwia porównanie dwóch wersji tego samego pliku w tej samej gałęzi, ale nie obsługuje porównywania wersji plików między gałęziami.
W Eksplorator rozwiązań wybierz plik i wybierz pozycję Historia widoku usługi Git z menu kontekstowego pliku, aby otworzyć kartę Historia usługi Git > dla wybranego pliku.
Na karcie Historia usługi Git wybierz pozycję Porównaj z poprzednim menu kontekstowym zatwierdzenia, aby otworzyć kartę Różnice , która porównuje wybrane zatwierdzenie z poprzednim zatwierdzeniem.
Możesz też wybrać dwa zatwierdzenia i wybrać pozycję Porównaj z menu kontekstowego zatwierdzenia, aby otworzyć kartę Różnice , która porównuje dwa wybrane zatwierdzenia.
Na karcie Różnice są wyświetlane nowe, usunięte lub zmodyfikowane wiersze plików.
Program Visual Studio umożliwia porównanie dwóch wersji tego samego pliku w tej samej gałęzi, ale nie obsługuje porównywania wersji plików między gałęziami.
W Eksplorator rozwiązań wybierz plik i wybierz pozycję Historia widoku usługi Git z menu kontekstowego pliku, aby otworzyć kartę Historia usługi Git > dla wybranego pliku.
Na karcie Historia usługi Git wybierz pozycję Porównaj z poprzednim menu kontekstowym zatwierdzenia, aby otworzyć kartę Różnice , która porównuje wybrane zatwierdzenie z poprzednim zatwierdzeniem.
Możesz też wybrać dwa zatwierdzenia i wybrać pozycję Porównaj z menu kontekstowego zatwierdzenia, aby otworzyć kartę Różnice , która porównuje dwa wybrane zatwierdzenia.
Na karcie Różnice są wyświetlane nowe, usunięte lub zmodyfikowane wiersze plików.
Program Visual Studio 2019 w wersji 16.8 lub nowszej zapewnia środowisko kontroli wersji usługi Git przy zachowaniu interfejsu użytkownika programu Git programu Team Explorer . Aby użyć programu Team Explorer, usuń zaznaczenie pozycji Opcje narzędzi>>w wersji zapoznawczej Funkcje>nowego środowiska użytkownika usługi Git na pasku menu.
W Eksplorator rozwiązań wybierz plik i wybierz pozycję Historia widoku usługi Git z menu kontekstowego pliku, aby otworzyć kartę Historia usługi Git > dla wybranego pliku.
Na karcie Historia usługi Git wybierz zatwierdzenie i wybierz pozycję Wyświetl szczegóły zatwierdzenia z menu kontekstowego zatwierdzenia, aby otworzyć widok Szczegóły zatwierdzenia.
W widoku Szczegóły zatwierdzenia wybierz plik i wybierz pozycję Otwórz z menu kontekstowego pliku, aby otworzyć poprzednią wersję pliku na nowej karcie.
Wybierz pozycję Plik > Zapisz jako na pasku menu, aby zapisać przywróconą wersję pliku.
Możesz porównać dowolne lokalne lub zdalne gałęzie, aby przejrzeć zmiany, które będą wynikać z scalania lub ponownej bazy danych. Porównanie gałęzi umożliwia sprawdzenie konfliktów scalania i sprawdzenie, jak zmiany innych osób mogą wpływać na Twoją pracę.
Program Visual Studio 2019 i starsze wersje nie obsługują porównywania gałęzi, więc jeśli używasz jednej z tych wersji, możesz porównać gałęzie w wierszu polecenia Git lub przy użyciu przeglądarki internetowej — jeśli repozytorium jest hostowane w usłudze Azure Repos lub GitHub. Program Visual Studio 2022 obsługuje porównanie gałęzi zgodnie z opisem w sekcji Porównanie gałęzi.
W przeglądarce internetowej otwórz projekt zespołowy organizacji usługi Azure DevOps. W widoku Gałęzie repozytoriów > wybierz wielokropek dla dowolnej gałęzi i wybierz pozycję Porównaj gałęzie, aby otworzyć widok Porównanie gałęzi.
W widoku Porównanie gałęzi wybierz dwie gałęzie, które chcesz porównać. Wybierz kartę Pliki dla widoku różnic nowych, usuniętych lub zmodyfikowanych wierszy w każdym zmienionym pliku.
Uwaga
Usługa GitHub obsługuje porównanie gałęzi. Aby porównać dwie gałęzie, dołącz adres /compare/<branch1>...<branch2> URL repozytorium GitHub, aby przejść do strony porównania. Strona porównania zawiera różnicowy widok każdego pliku, który się różni. Aby uzyskać więcej informacji na temat porównywania gałęzi w usłudze GitHub, zobacz Porównanie gałęzi.
Aby porównać gałąź z bieżącą gałęzią, kliknij prawym przyciskiem myszy gałąź w okienku Gałęzie repozytorium, a następnie wybierz opcję porównania. Menu kontekstowe określa nazwy bieżących i docelowych gałęzi:
Program Visual Studio 2019 nie obsługuje porównywania gałęzi. Można jednak porównać gałęzie w wierszu polecenia usługi Git lub przy użyciu przeglądarki internetowej — jeśli repozytorium jest hostowane w usłudze Azure Repos lub GitHub.
Napiwek
Dostęp do portalu internetowego można uzyskać w widoku Strona główna programu Team Explorer, wybierając pozycję Portal internetowy.
Program Visual Studio 2019 nie obsługuje porównywania gałęzi. Można jednak porównać gałęzie w wierszu polecenia usługi Git lub przy użyciu przeglądarki internetowej — jeśli repozytorium jest hostowane w usłudze Azure Repos lub GitHub.
Napiwek
Dostęp do portalu internetowego można uzyskać w widoku Strona główna programu Team Explorer, wybierając pozycję Portal internetowy.
Aby porównać dowolne dwie lokalne lub zdalne gałęzie, możesz użyć polecenia Git diff określającego nazwy gałęzi:
git diff <branch1> <branch2>
Usługa Git porównuje zatwierdzenie na wierzchołku jednej gałęzi z zatwierdzeniem na wierzchołku drugiej. Dane wyjściowe różnic będą pokazywać usunięcia i dodatki między poszczególnymi plikami w dwóch gałęziach.
Oto przykład danych wyjściowych polecenia git diff users/frank/feature origin/main, które porównuje gałąź lokalną z gałęzią zdalną:
index 36843b8..03afc4b 100644
--- a/tsapp/index.html
+++ b/tsapp/index.html
@@ -4,7 +4,7 @@
<head>
<meta charset="utf-8" />
<title>TypeScript HTML App</title>
- <link rel="stylesheet" href="fabrikam-test.css" type="text/css" />
+ <link rel="stylesheet" href="fabrikam.css" type="text/css" />
<script src="app.js"></script>
</head>
...
--- a/tsapp/app.ts
+++ b/tsapp/app.ts
constructor(element: HTMLElement) {
this.element = element;
- this.element.innerHTML += "The time is: ";
+ this.element.innerHTML += "The time is now: ";
this.span = document.createElement('span');
this.element.appendChild(this.span);
this.span.innerText = new Date().toUTCString();
Aby zawęzić porównanie do określonego pliku, określ plik w poleceniu diff :
git diff <branch1> <branch2> <file>
Na przykład git diff users/frank/feature origin/main index.html spowoduje wygenerowanie różnic tylko dla index.html pliku.