Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Visual Studio 2019 | Visual Studio 2022
Bent u van plan Git te gebruiken, bekend bent met TFVC-acties en zich afvraagt hoe deze worden toegewezen aan Git? Beide zijn krachtige en volwassen broncodebeheersystemen. Echter, het overzetten van veelvoorkomende acties waaraan u in het ene systeem gewend bent naar het andere, kan een verwarrende ervaring zijn.
In dit artikel wordt niet verder ingegaan op de Git-opdrachten, aangezien deze goed gedocumenteerd zijn in de productdocumentatie, maar laat voorbeelden zien om u te helpen de juiste beslissingen te nemen, terwijl u door een typische create - kloon ->> brancheer - wijzig ->> commit -> push workflow gaat.
Begin aan het begin door een nieuwe opslagplaats te maken
Elk project kan TFVC- en Git-opslagplaatsen in hetzelfde project hosten, één TFVC en een of meer Git-opslagplaatsen maken.
Zodra de repository is aangemaakt, ontvangt u stapsgewijze instructies om direct aan de slag te gaan.
Klik op Leesmij-bestand maken aan het einde van de instructiepagina om context aan de repository te geven en geschiedenis te creëren.
Een werkruimte maken en de meest recente versie ophalen
Wanneer u voor het eerst verbinding maakt met een TFVC-opslagplaats, maakt u doorgaans een werkruimte en haalt u de meest recente code op. Hoe gaat u aan de slag in Git?
Net als bij een werkruimte in TFVC kunt u clone de Git-opslagplaats gebruiken voor een map op uw computer. Tijdens het klonen worden alle inhoud en geschiedenis van de opslagplaats gedownload naar uw lokale computer. Zodra u de gekloonde opslagplaats hebt, worden bijna alle bewerkingen lokaal uitgevoerd. U kunt offline werken met een volledige back-up van de gecentraliseerde opslagplaats.
git clone https://dev.azure.com/demo-fabrikam/Fabrikam/_git/Mapping-TFVC-actions-to-Git
U hoeft slechts één keer per repository te klonen, maar net als bij TFVC-werkruimten kunt u meerdere klonen maken om uw werk in uitvoering te isoleren. Echter, takken is doorgaans een betere manier om wijzigingen te isoleren.
Een vertakking maken
Met Git werkt u altijd in een vertakking en standaard in demain vertakking. U wordt aangeraden meerdere lokale vertakkingen te maken. Het is een proces dat slechts enkele seconden duurt en waarmee u naadloos kunt schakelen tussen branches en geïsoleerd kunt werken. In tegenstelling tot TFVC-vertakkingen, die zijn gericht op paden, zijn Git-vertakkingen op opslagplaatsniveau. Ze zijn lichtgewicht, kunnen alleen lokaal zijn of worden gedeeld met anderen wanneer u klaar bent om uw wijzigingen te delen.
Overweeg vertakkingen als u geïsoleerd wilt werken, uw werk moet onderbreken, zich moet richten op nieuwe functies of als u van plan bent om een Git-pull-aanvraag uit te voeren.
Herhaal een paar keer als TFVC-gebruiker:
- Het is aanbevolen om te vertakken!
- Git-vertakking is goedkoop, snel en krachtig.
- Git moedigt u aan om lokale branches te gebruiken.
- Publiceer lokale vertakkingen naar uw gecentraliseerde opslagplaats indien nodig.
- Controleer altijd uw vertakkingscontext voordat u wijzigingen aanbrengt.
- Geef de vertakking een naam volgens een gebruikelijke conventie, zoals (gebruikers/alias/branchname), bijvoorbeeld: gebruikers/doris/newfeature
Maak en schakel over naar een lokale onderwerpvertakking met de naam francis/demo-feature. Het is raadzaam om eerst een git status uit te voeren om te controleren of u zich op de juiste branch bevindt om mee te beginnen.
git checkout -b francis/demo-feature
Een wijziging aanbrengen door bestanden toe te voegen
Net als bij de TFVC-ervaring maken nieuwe bestanden in de werkmap niet automatisch deel uit van de opslagplaats. U faseert uw nieuwe bestanden met de git add-opdracht, wat gelijkstaat aan het uitvoeren van een add Items to Folder-bewerking in TFVC.
git add <file>
of
git add --all
Met behulp van het vooraf gebakken voorbeeld hebt u 13 nieuwe bestanden die zijn opgenomen en gefaseerd in de lokale opslagplaats.
Wachtende wijzigingen weergeven
Vraagt u zich af welke wijzigingen er nu in uw werkomgeving zitten? Net als voorheen worden wijzigingen in uw werkstructuur weergegeven door de Git-opdracht status of de Changes weergave in de Visual Studio IDE.
git status
Wijzigingen controleren en lokaal doorvoeren
In TFVC deelt u uw wijzigingen met een check-in, waarmee uw in behandeling zijnde wijzigingen naar de server worden verzonden. Het Git-proces is iets anders. Eerst committeer je naar de lokale repository, waarbij je een commitobject maakt (zoals een wijzigingenset), en dan push je om deze wijzigingen naar de server te verzenden.
U voert de wijzigingen door in uw lokale opslagplaats met behulp van git commit, vergelijkbaar met een Checkin Pending Changes in TFVC. Een belangrijk verschil is dat de git commit wijzigingen worden doorgevoerd in de lokale opslagplaats in plaats van de externe opslagplaats.
git commit
Wijzigingen controleren met de server/externe opslagplaats
Eerst moet u uw lokale francis/demo-feature branch publiceren naar de externe server, die alle commit-wijzigingen bevat.
git push --set-upstream origin francis/demo-feature
Als u verdere updates in uw lokale wilt synchroniseren met de externe opslagplaats, moet u uw wijzigingen pushen met behulp van git push. De aanbevolen procedure voor het gebruik van de Git-opdracht of de Visual Studio IDE is het volgende:
-
fetchom inhoud te downloaden en binnenkomende wijzigingen van anderen te bekijken. -
pullom wijzigingen van anderen te downloaden en vervolgens samen te voegen. -
pushom uw lokale wijzigingen te delen.
Historie weergeven
Om de commit te zien die u zojuist heeft gemaakt, kunt u de lokale geschiedenis bekijken.
Gebruik voor een compacte geschiedenis:
git log --oneline
Gebruik voor een gedetailleerde weergave:
git log
Zoals hierboven weergegeven, worden de auteur, e-mail, datum en de SHA-1-controlesom voor commits weergegeven. Als TFVC-gebruiker kunt u de --stat optie gebruiken om meer informatie op te nemen, zoals bestandsnaam en wijzigingsstatistieken.
U kunt ook de geschiedenis van de gecentraliseerde opslagplaats bekijken met behulp van de Azure DevOps Services-webportal.
Kies in de Azure DevOps Services-webportal CODE > Geschiedenis of CODE > Explorer-geschiedenis >
Op dit moment hebt u succesvol de maken -> klonen -> vertakken -> wijzigen -> vastleggen -> push workflow verkend, gebaseerd op de algemene TFVC-acties.
U hebt ook de mogelijkheid om een pull-aanvraag uit te geven om uw wijzigingen op dit moment op de server/externe opslagplaats te publiceren en te faseeren.
Andere acties
Wissel vertakkingen
Wanneer u met Git werkt, wijzigt u geen vertakkingen door over te schakelen naar afzonderlijke mappen en locaties op uw computer. U wijzigt de context door een checkout, zodat de hele werkmap overeenkomt met de geselecteerde vertakking of doorvoering.
Snel en eenvoudig!
Opdrachtregel
git checkout <branch>
Als u bent vergeten welke vertakkingen u in uw lokale opslagplaats hebt, gebruikt git branch u om de standaard- en bekende vertakkingen weer te geven.
Houd er rekening mee op welke tak u werkt! Wanneer je met meerdere branches in Git werkt, schakel je tussen branches in dezelfde werkdirectory. Schakelen tussen vertakkingen is een snelle werking en ervoor zorgen dat u zich altijd op de juiste vertakking bevindt, is een goede gewoonte.
Nieuwste versie downloaden
Er zijn veel redenen om updates te ontvangen. Wanneer u bijvoorbeeld de context naar een ander project wilt overschakelen, vernieuwt u uw ontwikkelcomputer met de nieuwste versie van de codebasis.
Opdrachtregel
git pull
of
git fetch
gevolgd door
git merge FETCH_HEAD
Haal altijd de nieuwste versie op en los samenvoegingsconflicten lokaal op.
Lokale wijzigingen ongedaan maken
Mogelijk is er een geldige reden om alle revisies die u in uw lokale opslagplaats hebt aangebracht, terug te zetten en uw werkomgeving opnieuw in te stellen op de nieuwste versie van de externe opslagplaats.
Opdrachtregel
git reset --hard HEAD
gevolgd door
git pull origin
gevolgd door
git clean -xdf
Het scenario is synoniem voor het uitvoeren van een Get > Latest Version met de Overwrite writable files that are not checked out en Overwrite all files if the local version matches the specified version opties in TFVC.
U kunt uw lokale opslagplaats ook handmatig wissen, nadat u een gevalideerde kopie hebt gemaakt, en vervolgens clone de opslagplaats opnieuw.
Er zijn veel meer acties en opties beschikbaar voor Git-gebruikers. Hier volgen enkele nuttige referentiesites voor meer informatie:
- Git-opdrachten die hier worden behandeld, raadpleegt u de Git-documentatie
- Denk als (een) Git, een gids voor de verwarden.
- Hoe maak je (bijna) alles ongedaan met Git, door Joshua Wehner
Vragen en Antwoorden
Hoe zit het met synchroniseren?
"Doet de Visual Studio IDE Commit and Sync dit niet op magische wijze?", vraagt u zich misschien af.
Selecteer Git>Commit of Stash om Git-wijzigingen te openen. Selecteer het Alles doorvoeren vervolgkeuzemenu en selecteer vervolgens Alles doorvoeren en synchroniseren.
Of selecteer in Team Explorer het Commit-vervolgkeuzemenu en daarna Command en synchroniseren.
Met magie komt verantwoordelijkheid! Veel gebruikers vinden het sync niet leuk omdat het soms uw lokale geschiedenis verpest en een merge-commit toevoegt boven op uw huidige doorvoer. Zodra u in een onbetrouwbare toestand verkeert, moet u teruggaan naar de command line omdat er momenteel geen resetondersteuning in de IDE is.
Auteurs: Jesse Houwing, Martin Hinshelwood, Mike Fourie en Willy Schaub van alm | DevOps Rangers. Maak hier verbinding met hen.
c) 2015 Microsoft Corporation. Alle rechten voorbehouden. Dit document wordt 'as-is' opgegeven. Informatie en weergaven die in dit document worden uitgedrukt, met inbegrip van URL's en andere internetwebsiteverwijzingen, kunnen zonder kennisgeving worden gewijzigd. U gebruikt deze op eigen risico.
Aan dit document kunt u geen enkel wettelijk recht ontlenen op enige intellectuele eigendom van een Microsoft-product. U mag dit document kopiëren en gebruiken voor uw eigen referentiedoeleinden.