Om Git i Visual Studio
Visual Studio tillhandahåller ett användargränssnitt för Git, ett allmänt använt modernt versionskontrollsystem. Oavsett om källkoden finns på en GitHub-lagringsplats, Azure DevOps eller någon annan Git-provider kan du utföra alla vanliga uppgifter för versionskontroll i Visual Studio IDE. Eller så kan du arbeta lokalt utan någon leverantör alls, med alternativet att säkerhetskopiera källan senare när du är redo att ansluta till en provider.
Källkoden du arbetar med behöver inte ha skapats med Visual Studio. Du kan arbeta med valfri källmapp på valfri Git-lagringsplats, oavsett om det finns en Visual Studio-projektfil eller inte.
Börja med Git och GitHub i Visual Studio
Så här kommer du igång med Git med Visual Studio:
Om du har en Git-lagringsplats som finns på en Git-provider som GitHub klona lagringsplatsen till den lokala datorn.
Annars kan du enkelt skapa en ny Git-lagringsplats och lägga till din kod. Om du inte har någon Git-provider än rekommenderar vi att du börjar med GitHub eftersom Git-upplevelsen i Visual Studio är optimerad för den här providern. GitHub erbjuder kostnadsfri och säker molnkodlagring där du kan lagra din kod och komma åt den från valfri enhet, var som helst.
Du kan inte bara lägga till både GitHub- och GitHub Enterprise-konton i din nyckelring, utan du kan också utnyttja dem precis som med Microsoft-konton. Om du inte har något GitHub-konto följer du dessa steg för att skapa ett GitHub-konto som ska användas med Visual Studio nu.
Om du vill använda git-kommandon på kommandoraden bör du även installera Git för Windows (inte en Microsoft-produkt).
Visa filer i Solution Explorer
När du klonar en lagringsplats eller öppnar en lokal lagringsplats växlar Visual Studio till Git-kontexten. Solution Explorer läser in mappen i roten på Git-lagringsplatsen och söker igenom katalogträdet efter alla filer som kan visas, till exempel CMakeLists.txt
eller filer med filtillägget .sln
. Mer information finns i Visa filer i Solution Explorer.
Grenar och fjärranslutna lagringsplatser
Du kan använda grenar för att hålla relaterade ändringar åtskilda från orelaterade ändringar som du också arbetar med. Det rekommenderade Git-arbetsflödet använder en ny gren för varje funktion eller korrigering som du arbetar med. Lär dig hur du skapar en branch från Visual Studio.
När du har skapat en ny gren och växlat till den kan du börja arbeta genom att ändra befintliga filer eller genom att lägga till nya och sedan checka in ditt arbete på lagringsplatsen. Mer information om hur du gör en incheckning i Visual Studio och för att bättre förstå filtillstånd i Git finns på sidan Gör en incheckning.
Git är ett distribuerat versionskontrollsystem, vilket innebär att alla ändringar som gjorts hittills endast är lokala ändringar. Om du vill bidra med dessa ändringar till en fjärrlagringsplats måste du skicka de lokala kommandona till ett fjärranslutet förvar.
Om du arbetar i ett team, eller om du använder olika datorer, kan du ofta behöva hämta och hämta nya ändringar på fjärrlagringsplatsen. Mer information om hur du hanterar Git-nätverksåtgärder i Visual Studio finns på sidan Hämta, hämta, pusha och synkronisera.
Arkivhantering och samarbete
Det finns dock tillfällen då det är mer meningsfullt att fokusera på din Git-lagringsplats. Du kan till exempel behöva få en bra bild av vad ditt team har arbetat med, eller kopiera en commit från en annan funktionsgren, eller bara städa upp dina utgående commits. Visual Studio innehåller kraftfulla funktioner för bläddring i lagringsplatser och samarbete, som tar bort behovet av att använda andra verktyg.
För att hjälpa dig att fokusera på din Git-lagringsplats har Visual Studio ett Git-lagringsplats fönster, som är en konsoliderad vy över all information på lagringsplatsen, inklusive lokala och fjärranslutna grenar och incheckningshistorik. Du kan komma åt det här fönstret direkt från antingen Git eller View på menyraden eller från statusfältet.
Bläddra bland och hantera Git-lagringsplatser
Mer information om hur du kan använda Git-lagringsplatsen i Visual Studio för att bläddra och hantera din Git-lagringsplats finns på följande sidor:
Hantera sammanslagningskonflikter
Konflikter kan uppstå under en sammanslagning om två utvecklare ändrar samma rader i en fil och Git inte automatiskt vet vilken som är korrekt. Git stoppar sammanfogningen och informerar dig om att du är i ett konflikttillstånd. Läs mer på sidan Lösa sammanslagningskonflikter.
Anpassa dina Git-inställningar
Så här anpassar du dina Git-inställningar på lagringsplatsnivå och på global nivå:
Gå till antingen Git>-inställningar på menyraden eller Verktyg>alternativ>källkontroll>globala Git-inställningar
Välj de alternativ du vill använda.
Produktivitetsförbättringar
I Visual Studio 2022 version 17.12kan du välja valfritt kodavsnitt, och högerklicka, expandera Git-undermenyn och välj Kopiera GitHub Permalink- (eller Kopiera AzureDevOps Permalink) för att generera en GitHub Permalink- eller Azure DevOps Permalink och kopiera den till Urklipp. Därifrån kan du klistra in den var som helst där en länk kan användas, i webbläsaren eller dela den via e-post, chattsessioner och dokument. Du kan också göra samma sak inom den inbäddade detaljvyn för commit i fönstret Git-lagringsplats. Med den här funktionen kan du referera till specifik kod från tidigare ändringar utan att byta grenar. Du måste vara inloggad i Visual Studio med ett konto hos Git-värdleverantören, GitHub eller Azure DevOps.
I Visual Studio 2022 version 17.6kan du söka efter och länka till GitHub Issues och Azure DevOps-arbetsuppgifter. Se blogginlägget Git-funktioner för att förbättra produktiviteten.
Git är nu standardlösningen för versionshantering i Visual Studio 2019. Sedan version 16.6har vi arbetat med att skapa funktionsuppsättningen och iterera den baserat på din feedback. I version 16.8blev det standardupplevelsen för versionskontroll för alla.
Not
Vi fortsätter att bygga ut och iterera på Git-funktionen som anges i Visual Studio 2022också. För att lära dig mer om en nyligen genomförd funktionsuppdatering, se blogginlägget om Multi-repo-stöd i Visual Studio.
Läs mer om Git
Git är det mest använda moderna versionskontrollsystemet, så oavsett om du är en professionell utvecklare eller om du lär dig att koda kan Git vara mycket användbart för dig. Om du är nybörjare på Git är https://git-scm.com/ webbplats ett bra ställe att börja på. Där hittar du fuskark, en populär onlinebok och Git Basics-videor.
Börja med Git i Visual Studio 2019
Vi går igenom hur du använder den nya Git-upplevelsen i Visual Studio, men om du vill ta en snabb rundtur först kan du titta på följande video:
Videolängd: 5,27 minuter
Det finns tre sätt att börja använda Git med Visual Studio för att vara mer produktiv:
- Skapa en ny Git-lagringsplats. Om du redan har kod som inte är associerad med Git kan du börja med att skapa en ny Git-lagringsplats.
- Klona en befintlig Git-lagringsplats. Om koden som du vill arbeta med inte finns på datorn kan du klona befintliga fjärrlagringsplatser.
- Öppna en befintlig Git-lagringsplats. Om koden redan finns på datorn kan du öppna den med hjälp av File>Open>Project/Solution (eller Folder) och Visual Studio identifierar automatiskt om den har en initierad Git-lagringsplats.
Anteckning
Från och med Visual Studio 2019 version 16.8innehåller vi en helt integrerad GitHub-kontoupplevelse. Nu kan du lägga till både GitHub- och GitHub Enterprise-konton i din nyckelring. Du kan lägga till och utnyttja dem precis som med Microsoft-konton, vilket innebär att du får enklare tid att komma åt dina GitHub-resurser i Visual Studio. Mer information finns på sidan Arbeta med GitHub-konton i Visual Studio.
Tips
Om du inte har något GitHub-konto kan du börja med att följa stegen som beskrivs i Skapa ett GitHub-konto som ska användas med Visual Studio sidan.
Skapa en ny Git-lagringsplats i Visual Studio 2019
Om koden inte är associerad med Git kan du börja med att skapa en ny Git-lagringsplats. Det gör du genom att välja Git>Skapa Git-lagringsplats från menyraden. Ange sedan din information i dialogrutan Skapa en Git-lagringsplats.
Dialogrutan Skapa en Git-lagringsplats gör det enkelt att skicka din nya lagringsplats till GitHub. Som standard är den nya lagringsplatsen privat, vilket innebär att du är den enda som kan komma åt den. Om du avmarkerar rutan blir lagringsplatsen offentlig, vilket innebär att alla på GitHub kan visa den.
Tips
Oavsett om lagringsplatsen är offentlig eller privat är det bäst att ha en fjärrsäkerhetskopia av koden lagrad säkert på GitHub även om du inte arbetar med ett team. Detta gör även din kod tillgänglig för dig oavsett vilken dator du använder.
Du kan välja att skapa en lokal Git-lagringsplats med hjälp av alternativet Endast lokal. Eller så kan du länka ditt lokala projekt till en befintlig tom fjärrlagringsplats på Azure DevOps eller någon annan Git-provider med hjälp av alternativet befintlig fjärr.
Klona en befintlig Git-lagringsplats i Visual Studio 2019
Visual Studio innehåller en enkel kloningsupplevelse. Om du känner till URL:en för lagringsplatsen som du vill klona kan du klistra in URL:en i avsnittet Lagringsplats och sedan välja den diskplats som du vill att Visual Studio ska klonas till.
Om du inte känner till lagringsplatsens URL gör Visual Studio det enkelt att bläddra till och sedan klona din befintliga GitHub- eller Azure DevOps-lagringsplats.
Öppna en befintlig lokal lagringsplats i Visual Studio 2019
När du har klonat en lagringsplats eller skapat en identifierar Visual Studio Git-lagringsplatsen och lägger till den i din lista över lokala lagringsplatser på Git-menyn.
Härifrån kan du snabbt komma åt och växla mellan dina Git-lagringsplatser.
Visa filer i Solution Explorer i Visual Studio 2019
När du klonar en lagringsplats eller öppnar en lokal lagringsplats växlar Visual Studio dig till git-kontexten genom att spara och stänga alla tidigare öppna lösningar och projekt. Solution Explorer läser in mappen i roten på Git-lagringsplatsen och söker igenom katalogträdet efter alla filer som kan visas. Dessa inkluderar filer som CMakeLists.txt eller filer med filnamnstillägget .sln.
Visual Studio justerar vyn baserat på vilken fil du läser in i Solution Explorer:
- Om du klonar en lagringsplats som innehåller en enda
.sln
fil läser Solution Explorer in lösningen direkt åt dig. - Om Solution Explorer inte identifierar några
.sln
filer på lagringsplatsen läser den som standard in mappvyn. - Om lagringsplatsen har fler än en
.sln
fil visar Solution Explorer listan över tillgängliga vyer som du kan välja mellan.
Du kan växla mellan den öppna vyn och listan med vyer med hjälp av knappen Växla vyer i verktygsfältet i Solution Explorer.
Mer information finns i avsnittet Visa filer i Solution Explorer i självstudiekursen Öppna ett projekt från en lagringsplats.
Fönstret Git-ändringar i Visual Studio 2019
Git spårar filändringar i lagringsplatsen när du arbetar och separerar filerna i lagringsplatsen i tre kategorier. Dessa ändringar motsvarar vad du skulle se när du anger kommandot git status
på kommandoraden:
- Oförändrade filer: Dessa filer har inte ändrats sedan din senaste commit.
- Ändrade filer: Dessa filer har ändringar sedan din senaste commit, men du har ännu inte stagat dem för nästa commit.
- Mellanlagrade filer: Dessa filer har ändringar som kommer att läggas till i nästa ändringslogg.
När du gör ditt arbete håller Visual Studio reda på filändringarna i projektet i avsnittet Ändringar i fönstret Git-ändringar.
När du är redo att mellanlagra ändringar klickar du på knappen + (plus) på varje fil som du vill mellanlagra, eller högerklickar på en fil och väljer sedan Stage. Du kan också staga alla ändrade filer med ett klick genom att använda knappen staga alla + (plus) överst i avsnittet Ändringar.
När du mellanlagrar en ändring skapar Visual Studio ett Mellanlagda ändringar avsnitt. Endast ändringar i avsnittet Staged Changes läggs till i nästa commit, vilket du kan göra genom att välja Commit Staged. Motsvarande kommando för den här åtgärden är git commit -m "Your commit message"
. Ändringar kan också tas bort genom att klicka på knappen – (minus). Motsvarande kommando för den här åtgärden är git reset <file_path>
att ta bort en enskild fil eller git reset <directory_path>
för att ta bort alla filer i en katalog.
Du kan också välja att inte mellanlagra dina ändrade filer genom att hoppa över mellanlagringsområdet. I det här fallet låter Visual Studio dig checka in ändringarna direkt utan att behöva mellanlagra dem. Ange bara incheckningsmeddelandet och välj sedan Checka in alla. Motsvarande kommando för den här åtgärden är git commit -a
.
Visual Studio gör det också enkelt att checka in och synkronisera med ett klick med hjälp av genvägarna Commit All och Push och Commit All och Sync. När du dubbelklickar på en fil i Ändringar och Mellanlagrade ändringar i avsnitten, kan du se en jämförelse rad för rad med den oförändrade versionen av filen.
Tips
Du kan associera ett Azure DevOps-arbetsobjekt med en incheckning med hjälp av tecknet "#" om du är ansluten till Azure DevOps-lagringsplatsen. Du kan ansluta din Azure DevOps-lagringsplats via Team Explorer>Hantera anslutningar.
Välj en befintlig gren i Visual Studio 2019
Visual Studio visar den aktuella grenen i väljaren överst i fönstret Git-ändringar.
Den aktuella grenen är också tillgänglig i statusfältet längst ned till höger i Visual Studio IDE.
Från båda platserna kan du växla mellan befintliga grenar.
Skapa en ny gren i Visual Studio 2019
Du kan också skapa en ny gren. Motsvarande kommando för den här åtgärden är git checkout -b <branchname>
.
Att skapa en ny gren är lika enkelt som att ange grennamnet och basera det på en befintlig gren.
Du kan välja en befintlig lokal gren eller fjärrgren som bas. Kryssrutan Checkout växlar dig automatiskt till den nyligen skapade grenen. Motsvarande kommando för den här åtgärden är git checkout -b <new-branch><existing-branch>
.
Git Repository-fönstret i Visual Studio 2019
Visual Studio har ett nytt Git-repositorie-fönster, som är en samlad vy över all information i ditt repository, inklusive alla grenar, fjärranslutningar och ändringshistorik. Du kan komma åt det här fönstret direkt från antingen Git eller View på menyraden eller från statusfältet.
Hantera grenar i Visual Studio 2019
När du väljer Hantera grenar från Git-menyn, visas grenarnas trädvy i fönstret Git-förråd. I den vänstra rutan kan du använda snabbmenyn med högerklick för att checka ut grenar, skapa nya grenar, slå samman, rebase, cherry-pick och mer. När du klickar på grenen kan du se en förhandsgranskning av dess incheckningshistorik i den högra rutan.
Inkommande och utgående commits i Visual Studio 2019
När du hämtar en branch har Git-ändringar-fönstret en indikator under grenlistrutan, som visar antalet ohämtade incheckningar från fjärrgrenen. Den här indikatorn visar också antalet lokala commits som inte har skickats.
Indikatorn fungerar också som en länk för att ta dig till incheckningshistoriken för den grenen i Git-lagringsplats fönstret. Överst i historiken visas nu detaljer om dessa inkommande och utgående ändringar. Härifrån kan du också välja att dra eller trycka commit-ändringarna.
Incheckningsinformation i Visual Studio 2019
När du dubbelklickar på en Commitöppnar Visual Studio informationen i ett separat verktygsfönster. Härifrån kan du återställa ändringen, återställa ändringspunkten, ändra ändringsmeddelandet eller skapa en tagg på ändringen. När du klickar på en ändrad fil i incheckningen öppnar Visual Studio sidan vid sida Diff- vy över incheckningen och dess överordnade.
Hantera sammanslagningskonflikter i Visual Studio 2019
Konflikter kan uppstå under en sammanslagning om två utvecklare ändrar samma rader i en fil och Git inte automatiskt vet vilket som är korrekt. Git stoppar sammanfogningen och informerar dig om att du är i ett konflikttillstånd.
Visual Studio gör det enkelt att identifiera och lösa en sammanslagningskonflikt. Först visar fönstret Git-lagringsplats ett guldinformationsfält överst i fönstret.
Fönstret Git-ändringar visar även meddelandet "Sammanfogning pågår med konflikter" med de oomgjorda filerna i sin separata sektion nedan.
Men om inget av dessa fönster är öppet och i stället går till filen som har sammanslagningskonflikter behöver du inte söka efter följande text:
<<<<<<< HEAD
=======
>>>>>>> main
Visual Studio visar i stället ett guld informationsfält överst på sidan som anger att den öppnade filen har konflikter. Sedan kan du klicka på länken för att öppna Merge Editor.
Sammanslagningsredigeraren i Visual Studio 2019
Sammanslagningsredigeraren i Visual Studio är ett trevägs sammanslagningsverktyg som visar inkommande ändringar, dina aktuella ändringar och resultatet av sammanfogningen. Du kan använda verktygsfältet på den översta nivån i Merge Editor för att navigera mellan konflikter och automatiskt sammanfogade skillnader i filen.
Du kan också använda växlingsknapparna för att visa/dölja skillnader, visa/dölja ordskillnader och anpassa layouten. Det finns kryssrutor överst på varje sida som du kan använda för att ta alla ändringar från ena eller andra sidan. Men om du vill göra enskilda ändringar kan du klicka på kryssrutorna till vänster om de motstridiga raderna på båda sidor. När du har löst konflikterna kan du slutligen välja knappen Acceptera sammanfogning i Sammanslagningsredigeraren. Sedan skriver du ett commit-meddelande och committar ändringarna för att slutföra lösningen.
Anpassa dina Git-inställningar i Visual Studio 2019
Om du vill anpassa dina Git-inställningar på lagringsplatsnivå och på global nivå går du till antingen Git>Inställningar på menyraden eller till Verktyg>Alternativ>Källkontroll på menyraden. Välj sedan de alternativ du vill ha.
Så här använder du hela Team Explorer-upplevelsen i Visual Studio 2019
Den nya Git-upplevelsen är standardversionskontrollsystemet i Visual Studio 2019 från version 16.8 och senare. Men om du vill stänga av den kan du göra det. Gå till Verktyg>Alternativ>Miljö>Förhandsversionsfunktioner och växla sedan kryssrutan Ny Git-användarupplevelse, som växlar dig tillbaka till Team Explorer för Git.
Nästa steg
Tips
Om du vill veta mer om hur du använder Git och GitHub i Visual Studio registrerar du dig för Git-utbildningsserien.