Delen via


Git-opslagplaatsen beheren in Visual Studio

Het venster Git-opslagplaats biedt een volledige Git-ervaring waarmee u uw Git-opslagplaats kunt beheren en up-to-date kunt blijven met de projecten van uw team. U moet bijvoorbeeld doorvoeringen opnieuw instellen, terugzetten of kiezen, of uw doorvoergeschiedenis opschonen. Het venster Git-opslagplaats is ook een uitstekende plek om uw vertakkingen te visualiseren en te beheren.

Versiebeheer met Visual Studio is eenvoudig met Git. En u kunt op afstand werken met de Git-provider van uw keuze, zoals GitHub of Azure DevOps. U kunt ook lokaal werken zonder provider.

Het venster Git-opslagplaats openen

Als u het venster Git-opslagplaats wilt openen, kiest u >Git-opslagplaats weergeven (of drukt u op Ctrl+0, Ctrl+R), of drukt u op Ctrl+Q en zoekt u onder functiesnaar Git-opslagplaats.

Een commit uitleggen met GitHub Copilot Chat

Met Visual Studio 2022 versie 17.10 preview 2 en hoger en de GitHub Copilot-extensies kunt u AI gebruiken om een gedetailleerde doorvoeringsbeschrijving te genereren waarin de wijzigingen in die doorvoer worden beschreven. Druk op de knop Uitleg om aan te vragen dat GitHub Copilot een commit-beschrijving maakt. Als u GitHub Copilot wilt installeren, zie dan GitHub Copilot installeren en beheren in Visual Studio.

Schermopname van de knop Uitleg om GitHub Copilot te vragen een commit-uitleg te maken.

De laatste commit wijzigen (amenderen)

Het bijwerken van de laatste doorvoering wordt wijziging van in Git genoemd en dit is een veelvoorkomende use-case. Soms hoeft u alleen uw doorvoerbericht bij te werken of moet u mogelijk een wijziging van het laatste moment opnemen.

U kunt een commit op de commandoregel wijzigen met behulp van de volgende opdracht:

git commit --amend

Het venster Git-opslagplaats maakt het eenvoudig om uw meest recente doorvoerbericht bij te werken. Open de doorvoerdetails van de laatste doorvoering door erop te dubbelklikken en selecteer vervolgens de optie Bewerken naast het doorvoerbericht.

schermopname van het bewerken van een doorvoerbericht.

Wanneer u klaar bent met het bewerken van uw doorvoerbericht, selecteert u Wijzigen.

Schermopname van het opslaan van een bewerkt bericht door Wijzigen te selecteren.

Als u codewijzigingen wilt opnemen in uw laatste doorvoering, kunt u dit doen in het venster Git-wijzigingen. Schakel het selectievakje Wijzigen in en voer de wijzigingen door.

Schermopname van het wijzigen van codewijzigingen met behulp van het venster Git-wijzigingen.

Zie Git Tools - Geschiedenis herschrijven op de Git-website voor meer informatie over het wijzigen, waaronder het wijzigen van doorvoerberichten anders dan de meest recente.

Commits samenvoegen (squash)

Als u een reeks commits wilt samenvoegen, biedt Git de mogelijkheid om commits samen te voegen tot één enkele commit. Deze optie kan handig zijn als je vaak commits maakt en uiteindelijk een lange lijst met commits hebt die je wilt opschonen voordat je naar een externe repository pusht.

U kunt twee commits in de commandoregel samenvoegen met de volgende opdracht:

git rebase -i HEAD~2

Werk vervolgens pick bij naar squash, sla op en werk het commitbericht bij.

Schermopname van het bijwerken van pick to squash.

Als u doorvoeringen wilt samenvoegen in Visual Studio, gebruikt u de Ctrl-toets om meerdere doorvoeringen te selecteren die u wilt samenvoegen. Klik vervolgens met de rechtermuisknop en selecteer Squash Commits. Visual Studio combineert automatisch uw doorvoerberichten, maar soms is het beter om een bijgewerkt bericht op te geven. Nadat u het doorvoerbericht hebt bekeken en bijgewerkt, selecteert u de knop Squash.

Schermopname van het samenvoegen van commits in Visual Studio.

Zie Git Tools - Geschiedenis herschrijven op de Git-website voor meer informatie over het samenvoegen.

Vertakkingen samenvoegen en herbaseren

Als u Git-vertakkingen gebruikt om aan verschillende functies te werken, moet u op een bepaald moment updates opnemen die zijn geïntroduceerd in andere vertakkingen. Dit kan gebeuren terwijl je nog aan je feature branch werkt. Dit kan ook gebeuren wanneer u klaar bent met uw functievertakking en uw wijzigingen moet behouden door ze toe te voegen aan een andere vertakking. In Git kunt u deze updates opnemen door vertakkingen samen te voegen of opnieuw te gebruiken.

Notitie

In de volgende instructies wordt New_Feature gebruikt als voorbeeldnaam voor een functiebranch. Vervang deze door de naam van je eigen branch.

Gebruik de volgende opdrachten om de hoofdbranch samen te voegen in uw functiebranch op de opdrachtregel:

git checkout New_Feature
git merge main

Als u hetzelfde wilt doen in Visual Studio, bekijkt u de functievertakking door erop te dubbelklikken in de vertakkingslijst. Klik vervolgens met de rechtermuisknop op 'main' en selecteer 'main' samenvoegen in 'New_Feature'.

Schermopname van het samenvoegen van takken in Visual Studio.

Gebruik de volgende opdrachten om de hoofdvertakking opnieuw in uw functievertakking op de opdrachtregel te plaatsen:

git checkout New_Feature
git rebase main

Als u hetzelfde wilt doen in Visual Studio, bekijkt u de functievertakking door erop te dubbelklikken in de vertakkingslijst. Klik vervolgens met de rechtermuisknop op main en selecteer Rebase 'New_Feature' op 'main'.

Schermopname van het herschikken van branches in Visual Studio.

Zie voor meer informatie over samenvoegen, herbaseren en vertakkingen in het algemeen Git Branching op de Git-website.

Commits kopiëren (cherry-pick)

Kopieer commits van de ene vertakking naar de andere met behulp van de cherry-pick optie. In tegenstelling tot een samenvoeging of rebase brengt cherry-picken alleen de wijzigingen van de commits die u selecteert, in plaats van alle wijzigingen in een branche. Kersen plukken is een uitstekende manier om deze veelvoorkomende problemen aan te pakken:

  • Per ongeluk een commit maken in de verkeerde branch. Kies selectief de wijzigingen over naar de juiste branch en zet de oorspronkelijke branch vervolgens terug naar de vorige commit.
  • Door een set commits terughalen die zijn gemaakt in een featurebranch, zodat u ze voortijdig weer samenvoegt naar uw main branch.
  • Het overzetten van specifieke doorvoeringen vanuit de hoofdvertakking zonder dat uw vertakking opnieuw wordt gebruikt.

Om wijzigingen van een commit naar uw huidige tak te kopiëren via de opdrachtregel, gebruikt u de volgende opdracht:

git cherry-pick 7599e530

Om hetzelfde te doen in Visual Studio, selecteert u de vertakking waaruit u een commit wilt cherry-picken, door deze met één klik te selecteren. Klik vervolgens met de rechtermuisknop op de betreffende commit en selecteer Cherry-Pick.

schermopname van het kiezen van kersen in Visual Studio.

Wanneer de bewerking is voltooid, wordt in Visual Studio een bericht weergegeven dat het is gelukt. De commit die u hebt uitgekozen, wordt weergegeven in de sectie Uitgaande.

Raadpleeg de Git-webpagina voor het commando cherry-pickom meer te leren over cherry-pick commits.

Wijzigingen terugzetten

Gebruik de opdracht revert om wijzigingen in commits die naar gedeelde vertakkingen zijn gepusht ongedaan te maken. Met de opdracht Herstellen wordt een nieuwe doorvoering gemaakt waarmee de wijzigingen die zijn aangebracht op een vorige doorvoering ongedaan worden gemaakt. Met de opdracht revert wordt de geschiedenis van de opslagplaats niet herschreven, waardoor het veilig is om te gebruiken wanneer u met anderen werkt.

Gebruik de volgende opdrachten om wijzigingen ongedaan te maken die in een commit zijn doorgevoerd met behulp van de commandoregel. Vervang de voorbeeld-ID door de ID van een echte commit in uw vertakking.

git revert 53333305
git commit

In het vorige voorbeeld worden de wijzigingen ongedaan gemaakt die zijn aangebracht in commit 53333305 en wordt een nieuwe commit gemaakt op de branch. De oorspronkelijke commit bevindt zich nog steeds in de Git-geschiedenis. Als u hetzelfde wilt doen in Visual Studio, klikt u met de rechtermuisknop op de commit die u wilt herstellen en selecteert u daarna Herstellen. Nadat u uw actie hebt bevestigd en de bewerking is voltooid, geeft Visual Studio een succesbericht weer en verschijnt er een nieuwe commit in de sectie Uitgaande.

schermopname van het terugdraaien in Visual Studio.

Selecteer de nieuwe commit om te bevestigen dat de wijzigingen van de teruggedraaide commit ongedaan zijn.

Schermopname van het bevestigen van een terugdraaibewerking.

De menuoptie terugdraaien kan in bepaalde omstandigheden grijs worden weergegeven (uitgeschakeld), zoals bij merge commits of wanneer er een Git-bewerking wordt uitgevoerd.

Voor meer informatie over het terugdraaien van wijzigingen, zie de Git-webpagina voor de opdracht herstellen.

Een vertakking opnieuw instellen op een eerdere status

Gebruik de reset-opdracht om een vertakking in uw lokale repository terug te brengen naar de inhoud van een vorige commit. Met deze actie worden alle wijzigingen verwijderd die zijn aangebracht sinds de commit waarnaar u uw vertakking terugzet.

Waarschuwing

Stel gedeelde vertakkingen niet opnieuw in, omdat u het werk van anderen mogelijk verwijdert. Gebruik in plaats daarvan de opdracht Revert.

Als u een vertakking opnieuw wilt instellen op een eerdere status met behulp van de opdrachtregel, gebruikt u de volgende opdracht. Vervang de voorbeeld-id door de id van een echte commit in uw tak.

git reset --hard 53333305

Het --hard deel van de opdracht geeft Git opdracht om de bestanden opnieuw in te stellen op de status van de vorige doorvoering en eventuele gefaseerde wijzigingen te negeren. Als u hetzelfde wilt doen in Visual Studio, klikt u met de rechtermuisknop op de commit waarop u de vertakking wilt terugzetten en selecteert u vervolgens Reset>Wijzigingen verwijderen (--hard).

Schermopname van het opnieuw instellen van een vertakking in Visual Studio.

Raadpleeg de Git-webpagina voor de reset-opdrachtom meer te leren over het opnieuw instellen van vertakkingen.