- Fullständig integration av Microsofts ekosystem för hantering av programvarans livscykel med hjälp av Git-versionskontroll.
- Dubbelriktad synkronisering mellan den lokala utvecklingsmiljön och fjärrdatabaser i molnet.
- Automatisering av applikationsdistribution genom kontinuerlig integration och leveranspipelines till Azure App Service.
Om du är mjukvaruutvecklare vet du att det är viktigt att ha välorganiserad kod för att undvika att bli galen mitt i ett projekt. Numera är molnet motorn som driver applikationsutvecklingen, och för oss som använder .NET och Visual Studio finns det ingen bättre kombination än Azure DevOps och GitHub. Dessa verktyg lagrar inte bara dina filer utan låter också flera utvecklare arbeta samtidigt utan överlappning.
I den här artikeln går vi igenom i detalj hur man konfigurerar hela systemet. Det spelar ingen roll om du börjar från grunden eller redan har en avancerad lösning på din dator; vi lär dig hur du hanterar dina repositories , hanterar Git-grenar för att undvika att den stabila versionen förstörs och konfigurerar kontinuerlig distribution så att din webbplats uppdateras automatiskt. Nu sätter vi igång.
Vad är egentligen Azure DevOps och varför är det så coolt?

I grund och botten är Azure DevOps Microsofts schweiziska armékniv för utvecklingslivscykeln. För oss som programmerar i .NET är integrationen sömlös , eftersom allt är utformat för att passa perfekt ihop. Dess grundpelare är Azure Repos, där du lagrar kod i Git privat och gratis för små team, och Azure Boards, som används för att organisera uppgifter med hjälp av Kanban- eller Scrum-tavlor.
Dessutom har vi Azure Pipelines, där magin med automatiserad distribution sker , vilket gör att kod kan flyttas från ditt tangentbord till en produktionsserver utan att du behöver ladda upp filer manuellt. Hela detta ekosystem skapar fullständig synergi om du redan använder andra Azure-tjänster för att vara värd för dina databaser eller webbapplikationer.
Initial installation av din miljö i Azure DevOps
Innan vi börjar arbeta med Visual Studio behöver vi en plats att lagra vår kod. Gå först till Azure DevOps-portalen och logga in med ett Microsoft-konto. När du är inloggad kommer systemet att be dig att skapa en organisation , som fungerar som huvudbehållare för ditt företag eller din arbetsgrupp. Här väljer du ett unikt namn som kommer att ingå i din URL och närmaste geografiska region för att minimera latens.
När du har organisationen på plats är nästa steg att skapa det specifika projektet . Du kan välja om du vill att det ska vara publikt (i öppen källkodsstil) eller privat. Det är avgörande att du väljer Git som versionshanteringssystem i de avancerade inställningarna , eftersom det är den nuvarande standarden jämfört med den äldre TFVC. Du kan också välja ett ramverk, som Agile eller Basic, för att hantera dina problem och uppgifter.
Länka Visual Studio med dina repositories

Det är här det blir intressant. Beroende på din situation har du två huvudsakliga sätt att ansluta din IDE till molnet.
Om du redan har koden på din dator
Om du redan har en C#-lösning på gång och vill ladda upp den, öppna projektet i Visual Studio och gå till Git-menyn för att initiera det lokala arkivet . När du har gjort detta låter Visual Studio dig publicera arkivet på distans. Välj bara Azure DevOps, autentisera med ditt Microsoft-konto och välj den organisation och det projekt du skapade tidigare. IDE:n skapar sedan arkivet i molnet och laddar upp all din initiala kod.
Om projektet redan finns i molnet
Om du går med i ett team som redan har koden i Azure Repos måste du klona den. Gå till Azure DevOps-webbportalen, navigera till avsnittet Repos och kopiera HTTPS-klonings-URL :en. Välj sedan alternativet att klona databasen i Visual Studio, klistra in adressen och välj mappen på hårddisken där du vill spara filerna. När det är klart kommer IDE:n att ladda ner hela historiken och låta dig öppna lösningen direkt.
Bemästra Git-arbetsflödet

Att arbeta med Git handlar inte bara om att ladda upp och ladda ner filer; det handlar om att hantera kaos. Den gyllene regeln är att använda grenar för varje ny funktion eller buggfix. På så sätt förblir "huvud"-grenen alltid stabil och funktionell medan du experimenterar i en separat gren.
Den dagliga processen innebär att göra lokala commits för att spara dina framsteg. När du är säker på att koden fungerar, skickar du en push för att ladda upp dessa ändringar till servern. För att integrera ditt arbete i huvudgrenen är det bäst att skapa en pull request , vilket gör att andra teammedlemmar kan granska din kod innan de sammanfogas, vilket säkerställer högre programvarukvalitet.
Ansluta med GitHub och kontinuerlig distribution

Medan Azure DevOps är kraftfullt, är GitHub fortfarande den sociala kungen av kod. Visual Studio låter dig integrera båda världarna genom specifika tillägg. Du kan koppla din lösning till ett GitHub-arkiv genom att högerklicka på lösningen och välja " Lägg till i källkontroll " och därmed publicera den till ditt GitHub-konto.
Den verkliga kraften kommer med Continuous Delivery (CD) . Tänk dig att varje gång du ansluter till GitHub uppdateras din webbplats i Azure App Service automatiskt. För att uppnå detta måste du skapa en webbapptjänst i Azure-portalen och auktorisera anslutningen till GitHub i Deployment Center . Du väljer organisation, databas och gren, och det är allt: Azure konfigurerar en byggtjänst som distribuerar ändringarna i realtid, vilket eliminerar risken för manuella fel under distributionen.
Synkronisering och konfliktlösning
Glöm inte att teamwork innebär att andra också ändrar koden. Det är viktigt att utföra en "pull" ofta för att få in fjärrändringar i din lokala kopia. Ibland vet inte Git hur man sammanfogar två ändringar på samma kodrad, och en sammanfogningskonflikt uppstår . Visual Studio erbjuder ett mycket användbart visuellt differensverktyg för att jämföra båda versionerna och avgöra vilken som är korrekt, vilket säkerställer att inga förbättringar går förlorade under integrationen.
Kombinationen av Visual Studio, GitHub och Azure DevOps skapar ett professionellt arbetsflöde som möjliggör allt från uppgiftsplanering och versionshantering till automatisering av molndistribution, och optimerar varje utvecklingssteg för att uppnå snabba, säkra och skalbara leveranser.
Passionerad författare om bytesvärlden och tekniken i allmänhet. Jag älskar att dela med mig av min kunskap genom att skriva, och det är vad jag kommer att göra i den här bloggen, visa dig alla de mest intressanta sakerna om prylar, mjukvara, hårdvara, tekniska trender och mer. Mitt mål är att hjälpa dig att navigera i den digitala världen på ett enkelt och underhållande sätt.