Het werken met Git lokaal beschrijven
Git en Continuous Delivery zijn een van die heerlijke chocolade- en pindakaascombinaties. We vinden af en toe twee geweldige smaken die geweldig smaken in de softwarewereld!
Continue levering van software vereist een aanzienlijk automatiseringsniveau. Het is moeilijk om continu te leveren als u geen kwaliteitscodebasis hebt.
Git biedt u de bouwstenen om de kwaliteit van uw codebasis in rekening te brengen. Hiermee kunt u de meeste controles in uw codebasis automatiseren. Het werkt ook voordat u de code doorvoert in uw opslagplaats.
Als u de effectiviteit van Git volledig wilt waarderen, moet u eerst begrijpen hoe u basisbewerkingen uitvoert op Git. Bijvoorbeeld klonen, doorvoeren, pushen en pullen.
De natuurlijke vraag is, hoe gaan we aan de slag met Git?
Een optie is om systeemeigen te gaan met de opdrachtregel of te zoeken naar een code-editor die systeemeigen Ondersteuning biedt voor Git.
Visual Studio Code is een platformoverschrijdende opensource-code-editor die krachtige hulpprogramma's voor ontwikkelaars biedt voor honderden talen.
Als u in open source wilt werken, moet u opensource-hulpprogramma's omarmen.
Dit recept begint met:
- De ontwikkelomgeving instellen met Visual Studio Code.
- Een nieuwe Git-opslagplaats maken.
- Codewijzigingen lokaal doorvoeren.
- Wijzigingen pushen naar een externe opslagplaats in Azure DevOps.
Voorbereiding
In deze zelfstudie leert u hoe u een Git-opslagplaats lokaal initialiseert.
Vervolgens gebruiken we de ASP.NET Core MVC-projectsjabloon om een nieuw project te maken en deze te versien in de lokale Git-opslagplaats.
Vervolgens gebruiken we Visual Studio Code om te communiceren met de Git-opslagplaats om eenvoudige doorvoer-, pull- en pushbewerkingen uit te voeren.
U moet uw werkomgeving instellen met het volgende:
- .NET 8 SDK of hoger: Download .NET.
- Visual Studio Code: Visual Studio Code downloaden.
- C# Visual Studio Code-extensie: C#-programmering met Visual Studio Code.
- Git: Git - Downloads
- Git voor Windows (als u Windows gebruikt): Git voor Windows
Visual Studio Marketplace bevat verschillende extensies voor Visual Studio Code die u kunt installeren om uw ervaring met Git te verbeteren:
- Git Lens: Deze extensie biedt visualisatie voor codegeschiedenis met behulp van Git-aantekeningen en codelens. Met de extensie kunt u naadloos navigeren en de geschiedenis van een bestand of vertakking verkennen. Bovendien kunt u met de extensie waardevolle inzichten verkrijgen via krachtige vergelijkingsopdrachten en nog veel meer.
- Git-geschiedenis: biedt visualisatie- en interactiemogelijkheden om het Git-logboek, de bestandsgeschiedenis en vergelijking van vertakkingen of doorvoeringen weer te geven.
Hoe kunt u het doen?
Open de opdrachtprompt en maak een nieuwe werkmap:
mkdir myWebApp cd myWebApp
Initialiseer in myWebApp een nieuwe Git-opslagplaats:
git init
Configureer globale instellingen voor de naam en het e-mailadres dat moet worden gebruikt bij het doorvoeren in deze Git-opslagplaats:
git config --global user.name "John Doe" git config --global user.email "john.doe@contoso.com"
Als u werkt achter een bedrijfsproxy, kunt u ervoor zorgen dat uw Git-opslagplaats proxybewust is door de proxygegevens toe te voegen in het algemene Configuratiebestand van Git. Met verschillende variaties van deze opdracht kunt u een HTTP/HTTPS-proxy (met gebruikersnaam/wachtwoord) instellen en optioneel SSL-verificatie overslaan. Voer de onderstaande opdracht uit om een proxy te configureren in uw algemene Git-configuratie.
git config --global http.proxy http://proxyUsername:proxyPassword@proxy.server.com:port
Maak een nieuwe ASP.NET kerntoepassing. De nieuwe opdracht biedt een verzameling schakelopties die kunnen worden gebruikt voor taal- en verificatie- en frameworkselectie. Meer informatie vindt u in Microsoft Learn.
dotnet new mvc
Start Visual Studio Code in de context van de huidige werkmap:
code .
Wanneer het project wordt geopend in Visual Studio Code, selecteert u Ja voor de vereiste assets om te bouwen en fouten op te sporen in 'myWebApp'. Wilt u ze toevoegen? Waarschuwingsbericht. Selecteer Herstellen voor het bericht Over niet-opgeloste afhankelijkheden . Druk op F5 om fouten in de toepassing op te sporen, waarna myWebApp in de browser wordt geladen, zoals wordt weergegeven in de volgende schermopname:
Als u liever de opdrachtregel gebruikt, kunt u de volgende opdrachten uitvoeren in de context van de Git-opslagplaats om de webtoepassing uit te voeren.
dotnet build dotnet run
U ziet de ". DE VS Code-map wordt toegevoegd aan uw werkmap. Om te voorkomen dat deze map wordt doorgevoerd in uw Git-opslagplaats, kunt u deze opnemen in het .gitignore-bestand. Selecteer een bestand in de ". VS Code'-map, druk op F1 om het opdrachtvenster in Visual Studio Code te starten, typ gitIgnore en accepteer de optie om het geselecteerde bestand op te nemen in het nieuwe. gitIgnore-bestand.
Open uw .gitignore, verwijder de bestandsnaam uit het pad en laat de map met een slash, bijvoorbeeld . VS Code/*.
Als u het zojuist gemaakte myWebApp-project wilt faseren en doorvoeren naar uw Git-opslagplaats vanuit Visual Studio Code, navigeert u naar het Git-pictogram in het linkerdeelvenster. Voeg een doorvoercommentaar toe en voer de wijzigingen door door op het vinkje te klikken. De wijzigingen worden in één bewerking gefaseerde en doorgevoerd:
Open Program.cs, u ziet dat Git lens de klassen en functies versiert met de doorvoeringsgeschiedenis en deze informatie in overeenstemming brengt met elke regel code:
Start cmd nu in de context van de Git-opslagplaats en voer deze uit
git branch --list
. Hier ziet u dat alleen demain
vertakking in deze opslagplaats bestaat. Voer nu de volgende opdracht uit om een nieuwe vertakking te maken met de naamfeature-devops-home-page
.git branch feature-devops-home-page git checkout feature-devops-home-page git branch --list
U hebt een nieuwe vertakking gemaakt met deze opdrachten en uitgecheckt. Het
--list
trefwoord toont een lijst met alle vertakkingen in uw opslagplaats. De groene kleur vertegenwoordigt de vertakking die momenteel is uitgecheckt.Navigeer nu naar het bestand
~\Views\Home\Index.cshtml
en vervang de inhoud door de onderstaande tekst.@{ ViewData["Title"] = "Home Page"; } <div class="text-center"> <h1 class="display-4">Welcome</h1> <p>Learn about <a href="https://azure.microsoft.com/services/devops/">Azure DevOps</a>.</p> </div>
Vernieuw de web-app in de browser om de wijzigingen te bekijken.
Voer in de context van de Git-opslagplaats de volgende opdrachten uit. Met deze opdrachten worden de wijzigingen in de vertakking gefaseerde en vervolgens doorgevoerd.
git status git add . git commit -m "updated welcome page." git status
Als u de wijzigingen van de feature-devops-home-page wilt samenvoegen in de hoofdpagina, voert u de volgende opdrachten uit in de context van de Git-opslagplaats.
git checkout main git merge feature-devops-home-page
Voer de onderstaande opdracht uit om de functiebranch te verwijderen.
git branch --delete feature-devops-home-page
Hoe het werkt
De eenvoudigste manier om inzicht te krijgen in het resultaat van de stappen die u eerder hebt uitgevoerd, is door de geschiedenis van de bewerking te controleren. Laten we eens kijken hoe we dit kunnen doen.
In Git is het doorvoeren van wijzigingen in een opslagplaats een proces in twee stappen. Wordt uitgevoerd:
add .
De wijzigingen worden gefaseerd maar niet doorgevoerd. Ten slotte bevordert het uitvoeren van de doorvoer de gefaseerde wijzigingen in de opslagplaats.Als u de geschiedenis van wijzigingen in de hoofdbranch wilt bekijken, voert u de opdracht uit
git log -v
Als u de werkelijke wijzigingen in de doorvoer wilt onderzoeken, kunt u de opdracht uitvoeren
git log -p
Er is meer
Met Git kunt u eenvoudig een back-up maken van wijzigingen. Volg ons voorbeeld als u de wijzigingen die zijn aangebracht op de welkomstpagina wilt uitschakelen.
U kunt het moeilijk doen om de hoofdvertakking opnieuw in te stellen op een eerdere versie van de doorvoering met behulp van de volgende opdracht.
git reset --hard 5d2441f0be4f1e4ca1f8f83b56dee31251367adc
Als u de bovenstaande opdracht uitvoert, wordt de vertakking opnieuw ingesteld op de project-init-wijziging.
Als u de uitvoering uitvoert git log -v,
, ziet u dat de wijzigingen die zijn aangebracht op de welkomstpagina, worden verwijderd uit de opslagplaats.