Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Visual Studio 2019 | Visual Studio 2022
Git använder incheckningsmetadata som överordnade länkar, redigeringsinformation och tidsstämplar för att spåra historiken för ändringar i en lagringsplats. Du kan granska Git-historiken för att ta reda på när filer har ändrats, vem som har ändrat dem och vilka ändringar som har gjorts.
När personer skapar och sammanfogar funktionsgrenar i en målgren med pull-begäranden kanske inte målgrenens utvecklingshistorik är en rak kronologisk linje. När du granskar historiken för ändringar i en fil på målgrenen bör du komma ihåg att ordningen på incheckningar påverkas av sammanslagningsstrategi och sammanslagningsdatum, inte bara det ursprungliga datumet för ändringarna. Den senaste incheckningen på grenen main kan till exempel introducera en ändring som gjordes för flera veckor sedan i en funktionsgren som bara sammanfogades i grenen main med hjälp av en trevägssammanslagning.
När du vill ta reda på hur och när en viss filändring inträffade kan du behöva jämföra olika versioner av samma fil från olika incheckningar, eventuellt i olika grenar.
Med Azure DevOps-teamets projektwebbplats kan du jämföra två versioner av samma fil från incheckningar i samma gren, men stöder inte jämförelse av filversioner mellan grenar.
Öppna teamprojektet för din Azure DevOps-organisation från webbläsaren. I vyn Lagringsplatsfiler > väljer du en fil och väljer fliken Jämför.
På fliken Jämför väljer du de två incheckningar som innehåller de filversioner som du vill jämföra. I vyn diff visas alla nya, borttagna eller ändrade filrader.
Kommentar
Med GitHub kan du jämföra två versioner av samma fil från olika incheckningar mellan olika grenar. Om du vill jämföra lägger du /compare/<commit1>..<commit2> till din GitHub-lagringsplats-URL för att gå till jämförelsesidan. Jämförelsesidan innehåller en diff-vy över varje fil som skiljer sig åt. Mer information om incheckningsjämförelser i GitHub finns i Jämföra incheckningar.
Visual Studio 2022 tillhandahåller en Git-versionskontroll med hjälp av Git-menyn , Git-ändringar och snabbmenyer i Solution Explorer. Visual Studio 2019 version 16.8 erbjuder även Användargränssnittet för Team Explorer Git. Mer information finns på fliken Visual Studio 2019 – Team Explorer .
Med Visual Studio kan du jämföra två versioner av samma fil i samma gren, men stöder inte jämförelse av filversioner mellan grenar.
I Solution Explorer väljer du en fil och väljer Git-vyhistorik > på filens snabbmeny för att öppna fliken Git-historik för den valda filen.
På fliken Git-historik väljer du Jämför med Föregående från en inchecknings snabbmeny för att öppna en Diff-flik som jämför den valda incheckningen med föregående incheckning.
Eller välj två incheckningar och välj Jämför från antingen incheckningens snabbmeny för att öppna en Diff-flik som jämför de två valda incheckningarna.
Fliken Diff visar nya, borttagna eller ändrade filrader.
Visual Studio 2019 tillhandahåller en Versionskontroll för Git med hjälp av Git-menyn , Git-ändringar och snabbmenyer i Solution Explorer.
Med Visual Studio kan du jämföra två versioner av samma fil i samma gren, men stöder inte jämförelse av filversioner mellan grenar.
I Solution Explorer väljer du en fil och väljer Git-vyhistorik > på filens snabbmeny för att öppna fliken Git-historik för den valda filen.
På fliken Git-historik väljer du Jämför med Föregående från en inchecknings snabbmeny för att öppna en Diff-flik som jämför den valda incheckningen med föregående incheckning.
Eller välj två incheckningar och välj Jämför från antingen incheckningens snabbmeny för att öppna en Diff-flik som jämför de två valda incheckningarna.
Fliken Diff visar nya, borttagna eller ändrade filrader.
Team Explorer har inte stöd för den här funktionen.
Git diff-kommandot kan jämföra olika versioner av samma fil från olika incheckningar mellan olika grenar. Git-loggkommandot kan hjälpa dig att identifiera de incheckningar som innehåller de filversioner som du vill jämföra.
Använd git log och ange en fil för att visa de incheckningar som ändrade filen:
git log <file>
Som standard börjar kommandoutdata med den senaste incheckningen i den aktuella grenen och itererar sedan bakåt genom överordnade incheckningar (oavsett gren) genom att följa de överordnade länkarna i varje inchecknings metadata.
Här är ett exempel på utdata för kommandot git log index.html:
Utdata visar att en rad har tagits bort och en rad har lagts till.
Begränsa Git-loggutdata
Om du vill begränsa] incheckningarna som git log listar kan du filtrera efter författare, datum, meddelande, ändrat innehåll med mera. Till exempel:
git log --author=frank@fabrikam.com index.html visar endast incheckningar av den angivna författaren.
git log --since="2022-5-1" visar endast incheckningar som skapats efter det angivna datumet.
git log --before="yesterday" visar endast incheckningar som skapats före det angivna relativa datumet.
git log --grep="css change" visar endast incheckningar med den angivna texten i meddelandet.
git log -S"myVariable" visar endast incheckningar som introducerar eller tar bort den angivna strängen.
git log -G"myVar.*" visar endast incheckningar som introducerar eller tar bort den angivna regex-strängen.
git log -3 visar bara de tre senaste incheckningarna.
Formatera Git-loggutdata
Du har flera formatalternativ för incheckningslistan. Till exempel:
git log --abbrev-commit visar incheckningar med hjälp av ett förkortat ID (SHA-1-kontrollsumma).
git log --oneline visar varje incheckning i ett förkortat format med en rad.
git log --patch index.html visar varje incheckning tillsammans med ett diff av ändringarna.
Återställa filer
Du kan återställa en specifik version av en fil från Git-historiken, även om filen redigerades, togs bort eller bytte namn i en senare incheckning. När du återställer en äldre version av en fil skapas ingen ny incheckning med ändringen. Om du vill uppdatera din gren med den återställde filversionen måste du genomföra ändringen.
Med projektwebbplatsen för Azure DevOps-teamet kan du återställa alla ändringar som görs av en specifik incheckning, men stöder inte återställning av ändringar till en specifik fil i incheckningen.
Med Visual Studio kan du jämföra två versioner av samma fil i samma gren, men stöder inte jämförelse av filversioner mellan grenar.
I Solution Explorer väljer du en fil och väljer Git-vyhistorik > på filens snabbmeny för att öppna fliken Git-historik för den valda filen.
På fliken Git-historik väljer du Jämför med Föregående från en inchecknings snabbmeny för att öppna en Diff-flik som jämför den valda incheckningen med föregående incheckning.
Eller välj två incheckningar och välj Jämför från antingen incheckningens snabbmeny för att öppna en Diff-flik som jämför de två valda incheckningarna.
Fliken Diff visar nya, borttagna eller ändrade filrader.
Med Visual Studio kan du jämföra två versioner av samma fil i samma gren, men stöder inte jämförelse av filversioner mellan grenar.
I Solution Explorer väljer du en fil och väljer Git-vyhistorik > på filens snabbmeny för att öppna fliken Git-historik för den valda filen.
På fliken Git-historik väljer du Jämför med Föregående från en inchecknings snabbmeny för att öppna en Diff-flik som jämför den valda incheckningen med föregående incheckning.
Eller välj två incheckningar och välj Jämför från antingen incheckningens snabbmeny för att öppna en Diff-flik som jämför de två valda incheckningarna.
Fliken Diff visar nya, borttagna eller ändrade filrader.
Visual Studio 2019 version 16.8 och senare versioner ger en Git-versionskontroll samtidigt som du underhåller Git-användargränssnittet för Team Explorer . Om du vill använda Team Explorer avmarkerar du Verktyg>Alternativ>Förhandsgranskning Funktioner>Ny Git-användarupplevelse från menyraden.
I Solution Explorer väljer du en fil och väljer Git-vyhistorik > på filens snabbmeny för att öppna en Git-historikflik för den valda filen.
På fliken Git-historik väljer du en incheckning och väljer Visa incheckningsinformation på incheckningens snabbmeny för att öppna vyn Incheckningsinformation.
I vyn Incheckningsinformation väljer du filen och väljer Öppna på filens snabbmeny för att öppna den tidigare versionen av filen på en ny flik.
Välj Spara > som på menyraden för att spara den återställde versionen av filen.
Du kan jämföra alla lokala grenar eller fjärrgrenar för att granska de ändringar som kommer att bli resultatet av en sammanslagning eller ombasering. Med grenjämförelse kan du söka efter sammanslagningskonflikter och se hur andras ändringar kan påverka ditt arbete.
Visual Studio 2019 och tidigare versioner stöder inte grenjämförelse, så om du använder någon av dessa versioner kan du jämföra grenar på Git-kommandoraden eller använda webbläsaren – om lagringsplatsen finns i Azure Repos eller GitHub. Visual Studio 2022 stöder grenjämförelse enligt beskrivningen i Jämför grenar.
Öppna teamprojektet för din Azure DevOps-organisation från webbläsaren. I vyn Förgreningar för lagringsplatser > väljer du ellipsen för en gren och väljer Jämför grenar för att öppna jämförelsevyn Gren.
I jämförelsevyn Gren väljer du de två grenar som du vill jämföra. Välj fliken Filer för en diff-vy över de nya, borttagna eller ändrade raderna i varje ändrad fil.
Kommentar
GitHub stöder grenjämförelse. Om du vill jämföra två grenar lägger du /compare/<branch1>...<branch2> till din GitHub-lagringsplats-URL för att navigera till jämförelsesidan. Jämförelsesidan innehåller en diff-vy över varje fil som skiljer sig åt. Mer information om grenjämförelse i GitHub finns i Jämföra grenar.
Om du vill jämföra en gren med den aktuella grenen högerklickar du på en gren i fönstret Grenar på lagringsplatsen och väljer sedan alternativet jämför. Snabbmenyn anger namnen på aktuella grenar och målgrenarna:
Visual Studio 2019 stöder inte grenjämförelse. Du kan dock jämföra grenar på Git-kommandoradeneller med din webbläsare – om lagringsplatsen finns i Azure Repos eller GitHub.
Dricks
Du kan komma åt webbportalen från startvyn i Team Explorer genom att välja Webbportal.
Visual Studio 2019 stöder inte grenjämförelse. Du kan dock jämföra grenar på Git-kommandoradeneller med din webbläsare – om lagringsplatsen finns i Azure Repos eller GitHub.
Dricks
Du kan komma åt webbportalen från startvyn i Team Explorer genom att välja Webbportal.
Om du vill jämföra två lokala grenar eller fjärrgrenar kan du använda Git-kommandot diff som anger grennamnen:
git diff <branch1> <branch2>
Git jämför incheckningen i spetsen på en gren med incheckningen i spetsen på den andra. Diff-utdata visar borttagningarna och tilläggen mellan varje fil i de två grenarna.
Här är ett exempel på utdata för kommandot git diff users/frank/feature origin/main, som jämför en lokal gren med en fjärrgren:
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();
Om du vill begränsa jämförelsen till en specifik fil anger du filen i diff kommandot:
git diff <branch1> <branch2> <file>
Till exempel git diff users/frank/feature origin/main index.html genererar endast ett diff för index.html filen.