Het werken met Git lokaal beschrijven

Voltooid

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:

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?

  1. Open de opdrachtprompt en maak een nieuwe werkmap:

    mkdir myWebApp
    cd myWebApp
    
    
  2. Initialiseer in myWebApp een nieuwe Git-opslagplaats:

    git init
    
    
  3. 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 Git-configuratiebestand.

    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
    
    
  4. 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-documenten.

    dotnet new mvc
    
    

    Start Visual Studio Code in de context van de huidige werkmap:

    code .
    
    
  5. 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:

    Screenshot of Web App from Visual Studio Code.

    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 dat de map .vscode is 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 map .vscode, 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.

    Screenshot of add file to .gitignore action.

    Notitie

    Als u een hele map wilt negeren, moet u de naam van de map met de slash / aan het einde opnemen.

    Open uw .gitignore, verwijder de bestandsnaam uit het pad en laat de map staan met een slash, bijvoorbeeld .vscode/*.

    Screenshot of add vscode folder to .gitignore action.

  6. 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:

    Screenshot of commit using VSCode.

    Open Program.cs, u ziet dat Git lens de klassen en functies versiert met de doorvoergeschiedenis en deze informatie in overeenstemming brengt met elke regel code:

    Screenshot of Program.cs code showing class decoration.

  7. Start cmd nu in de context van de Git-opslagplaats en voer deze uit git branch --list. U ziet dat alleen de main vertakking momenteel in deze opslagplaats bestaat. Voer nu de volgende opdracht uit om een nieuwe vertakking te maken met de naam feature-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.

  8. 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>
    
    
    
  9. Vernieuw de web-app in de browser om de wijzigingen te bekijken.

    Screenshot of localhost welcome page.

  10. Voer in de context van de Git-opslagplaats de volgende opdrachten uit. Met deze opdrachten worden de wijzigingen in de vertakking gefaseren en vervolgens doorgevoerd.

    git status
    
    git add .
    
    git commit -m "updated welcome page."
    
    git status
    
    
  11. 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
    
    
    

    Screenshot of merge feature-devops-home-page output window.

  12. 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.

  1. 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.

  2. Als u de geschiedenis van wijzigingen in de hoofdbranch wilt bekijken, voert u de opdracht uit git log -v

    Screenshot of history of changes in the main branch.

  3. Als u de werkelijke wijzigingen in de doorvoer wilt onderzoeken, kunt u de opdracht uitvoeren git log -p

    Screenshot of the command line-showing git log -p output with file the changes.

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 deze opdracht uitvoert git log -v, , ziet u dat de wijzigingen die zijn aangebracht in de welkomstpagina, worden verwijderd uit de opslagplaats.