Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Kontinuerlig integrering (CI) är processen att automatiskt skapa och testa kod varje gång en teammedlem genomför kodändringar i versionskontrollen. En commit av kod till huvud- eller stamgrenen för ett delat arkiv utlöser det automatiserade byggsystemet att bygga, testa och verifiera hela grenen. CI uppmuntrar utvecklare att dela sina kod- och enhetstester genom att sammanfoga sina ändringar till lagringsplatsen för delad versionskontroll varje gång de slutför en uppgift.
Programvaruutvecklare arbetar ofta isolerat och behöver sedan integrera sina ändringar med resten av teamets kodbas. Att vänta dagar eller veckor på att integrera kod kan skapa många sammanslagningskonflikter, svåra att åtgärda buggar, olika kodstrategier och duplicerade insatser. CI undviker dessa problem eftersom det kräver att utvecklingsteamets kod kontinuerligt sammanfogas till grenen för delad versionskontroll.
CI behåller huvudgrenen uppdaterad. Utvecklare kan använda moderna versionskontrollsystem som Git för att isolera sitt arbete i kortlivade funktionsgrenar. När funktionen är klar skickar utvecklaren en pull-begäran från funktionsgrenen till huvudgrenen. När pull-begäran godkänns sammanfogas ändringarna till huvudgrenen och funktionsgrenen kan tas bort.
Utvecklingsteamen upprepar den här processen för varje arbetsobjekt. Teams kan upprätta grenprinciper för att säkerställa att huvudgrenen upprätthåller önskade kvalitetskriterier.
Byggdefinitioner anger att varje commit till huvudgrenen utlöser den automatiserade bygg- och testprocessen. Automatiserade tester kontrollerar att varje bygge upprätthåller konsekvent kvalitet. CI fångar buggar tidigare i utvecklingscykeln, vilket gör dem billigare att åtgärda.
CI är en standardfunktion i moderna DevOps-plattformar. GitHub-användare kan implementera CI via GitHub Actions. Azure DevOps-användare kan använda Azure Pipelines.