Uw wijzigingen vertakken en samenvoegen

Voltooid

Wanneer u aan Bicep-code werkt, is het gebruikelijk dat u meer dan één ding tegelijk moet doen. Hier volgen bijvoorbeeld twee scenario's voor het werken met de website van uw speelgoedbedrijf:

  • Het ontwikkelteam van uw website wil uw hulp bij het bijwerken van Bicep-bestanden met belangrijke wijzigingen. Het team wil echter niet dat deze wijzigingen nog live gaan. U moet kleine aanpassingen kunnen aanbrengen in de huidige liveversie van de website, parallel met het werk aan de nieuwe versie.
  • U werkt aan experimentele wijzigingen die u denkt te helpen de prestaties van de website te verbeteren. Deze wijzigingen zijn echter voorlopig. U wilt ze pas toepassen op de liveversie van de website als u klaar bent.

In deze les leert u meer over Git-vertakkingen.

Notitie

De opdrachten in deze les worden weergegeven om concepten te illustreren. Voer de opdrachten nog niet uit. U oefent wat u hier binnenkort leert.

Wat zijn vertakkingen?

Een vertakking biedt een manier om meerdere actieve kopieën van uw bestanden te hebben. U kunt op elk gewenst moment tussen vertakkingen maken en schakelen. Wanneer u klaar bent met het werken met een vertakking, kunt u deze samenvoegen in een andere vertakking. Of u kunt deze verwijderen, waardoor alle wijzigingen worden verwijderd.

Het is gebruikelijk om vertakkingen te gebruiken voor al uw werk. Vaak wijst u één vertakking aan als de primaire vertakking die de bekende goede of liveversie van uw bestanden vertegenwoordigt. Standaard wordt deze vertakking meestal main genoemd. U kunt een willekeurig aantal andere vertakkingen maken. Wanneer uw wijzigingen in een vertakking gereed zijn, voegt u de vertakking samen in de hoofdbranch .

Een vertakking maken en uitchecken

Het maken van een vertakking is snel en eenvoudig in Git. Er zijn een aantal manieren om dit te doen, maar de eenvoudigste manier is meestal om de git checkout opdracht te gebruiken. Hier volgt een voorbeeld van hoe we een nieuwe vertakking maken met de naam mijn experimentele wijzigingen:

git checkout -b my-experimental-changes

Met deze opdracht worden twee dingen uitgevoerd: hiermee wordt de vertakking mijn experimentele wijzigingen gemaakt en wordt de zojuist gemaakte vertakking uitgecheckt. Een betaling betekent dat de kopie van de bestanden die u in uw map ziet, overeenkomt met wat er in de vertakking staat. Als u twee vertakkingen met verschillende sets wijzigingen hebt, kunt u de ene vertakking bekijken en vervolgens tussen de twee sets met wijzigingen schakelen.

U kunt ook overschakelen naar een bestaande vertakking met behulp van de git checkout opdracht. In dit voorbeeld bekijkt u de hoofdbranch :

git checkout main

Notitie

Normaal gesproken moet u uw wijzigingen doorvoeren voordat u een andere vertakking kunt uitchecken. Git waarschuwt u als u het niet kunt uitchecken.

Werken aan een vertakking

Nadat u naar een vertakking bent overgeschakeld, voert u bestanden net als normaal door. Alles wat u tot nu toe hebt gedaan, bevindt zich in een vertakking. U werkte aan de hoofdbranch . Dit is de standaardbranch bij het maken van een nieuwe opslagplaats.

Wanneer u enkele wijzigingen doorvoert terwijl u een vertakking hebt uitgecheckt, is de doorvoer gekoppeld aan de vertakking. Wanneer u overschakelt naar een andere vertakking, ziet u de doorvoer waarschijnlijk pas in de git log geschiedenis als u de vertakking samenvoegt.

Vertakkingen samenvoegen

Vertakkingen zijn een uitstekende manier om uw actieve werk te scheiden van de huidige liveversie van uw Bicep-code. Maar nadat u klaar bent met het aanbrengen van wijzigingen in uw bestanden in een vertakking, wilt u de wijzigingen vaak weer samenvoegen met uw hoofdbranch .

Wanneer u aan één vertakking werkt, kunt u de wijzigingen van een andere vertakking samenvoegen in uw huidige vertakking met behulp van de git merge opdracht.

Notitie

Zorg ervoor dat u de doelbranch voor samenvoegen (ook wel de doelbranch genoemd) bekijkt voordat u samenvoegt. Houd er rekening mee dat u vanuit een andere vertakking samenvoegt in uw huidige werkvertakking.

Hier volgt een voorbeeld van hoe u de hoofdvertakking kunt bekijken en vervolgens de wijzigingen van de vertakking mijn experimentele wijzigingen kunt samenvoegen in de hoofdvertakking . Ten slotte verwijdert u de vertakking mijn experimentele wijzigingen , omdat u deze niet meer nodig hebt.

git checkout main
git merge my-experimental-changes
git branch -d my-experimental-changes

Tip

Wanneer u met andere personen werkt, is het gebruikelijk om pull-aanvragen te gebruiken om uw wijzigingen samen te voegen in plaats van vertakkingen rechtstreeks samen te voegen. U leert binnenkort meer over samenwerking en pull-aanvragen.

Samenvoegingsconflicten

Wanneer Git wijzigingen van de ene vertakking in een andere vertakking samenvoegt, wordt gekeken naar de bestanden die zijn gewijzigd en wordt geprobeerd de wijzigingen samen te voegen. Soms hebt u mogelijk wijzigingen aangebracht in dezelfde coderegels op twee verschillende vertakkingen. In deze situaties kan Git niet kiezen welke de juiste versie van de code is, zodat er in plaats daarvan een samenvoegingsconflict ontstaat.

We bespreken geen samenvoegingsconflicten in deze module, maar het is belangrijk om te weten dat samenvoegingsconflicten kunnen optreden. En het komt vaker voor wanneer u met anderen samenwerkt. In de samenvatting voor deze module bieden we een koppeling naar meer informatie over hoe Git en Visual Studio Code u helpen bij het oplossen van samenvoegingsconflicten.

Git-werkstromen

In deze module leert u alleen over de basisbeginselen van vertakkingen. Vertakkingen zijn echter krachtig en bieden u flexibiliteit in de werking van uw werk. U kunt bijvoorbeeld vertakkingen van andere vertakkingen maken en een vertakking samenvoegen met een andere vertakking. U kunt vertakkingen gebruiken om allerlei verschillende werkstromen te maken die de manier ondersteunen waarop u en uw team willen werken.

In deze module gebruiken we een eenvoudige werkstroom met de naam trunk-based development. In deze werkstroom hebt u één trunk-vertakking . We gebruiken bijvoorbeeld de hoofdtekst in de voorbeelden van dit artikel. Deze vertakking vertegenwoordigt de bekende goede versie van uw code. U maakt vertakkingen van deze trunk wanneer u wijzigingen aanbrengt of werkzaamheden uitvoert.

Ontwikkeling op basis van trunk ontmoedigt het rechtstreeks aanbrengen van wijzigingen op de trunkvertakking. U probeert andere vertakkingen gedurende slechts een korte tijd te behouden, waardoor samenvoegingsconflicten worden geminimaliseerd. Vervolgens voegt u deze vertakkingen samen en verwijdert u deze tijdens het voltooien van werk.

Er zijn andere werkstromen die gebruikelijk zijn in teamomgevingen waarin u mogelijk wilt bepalen hoe vaak u uw wijzigingen vrijgeeft. In de samenvatting voor deze module vindt u koppelingen naar meer informatie over Git-werkstromen.