Avancerad Git: monorepon, submoduler och arbetsflöden · Lektion

Git-integrering med CI/CD

Konfigurera och optimera Git-integrering med populära CI/CD-plattformar för att utlösa automatiserade byggen, tester och distributioner.

Lektion 3 av 411 steg

Git-integrering med CI/CD är en gratis lektion i Avancerad Git: monorepon, submoduler och arbetsflöden på CoddyKit. Detta är lektion 3 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Avancerad Git: monorepon, submoduler och arbetsflöden, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Avancerad Git: monorepon, submoduler och arbetsflöden innehåller totalt 4 lektioner.

Gits roll i CI/CD

Välkommen! I den här lektionen utforskar vi hur Git integreras med pipelines för Continuous Integration (CI) och Continuous Deployment (CD).

CI/CD automatiserar processen att bygga, testa och distribuera programvara. Git är centralt i detta och fungerar som utlösare för de automatiserade arbetsflödena.

Webhooks: Gits budbärare

Det huvudsakliga sättet som Git kommunicerar med CI/CD-verktyg är via webhooks.

  • En webhook är en automatiserad HTTP POST-begäran.
  • Git-hostingtjänster (som GitHub, GitLab och Bitbucket) skickar dessa begäranden.
  • De meddelar ditt CI/CD-system om händelser, till exempel en ny push av kod eller en pull request.

Konfigurera en Git-webhook

Det är vanligtvis enkelt att konfigurera en webhook:

  1. Gå till inställningarna för ditt repo hos din Git-hostingtjänst.
  2. Leta reda på avsnittet ”Webhooks” eller ”Integrations”.
  3. Lägg till en ny webhook och ange URL:en till ditt CI/CD-verktyg.
  4. Välj vilka Git-händelser (t.ex. push och pull request) som ska utlösa webhooken.

CI/CD-pipelineflöde

När en webhook utlöses börjar din CI/CD-pipeline köras. Så här ser ett typiskt flöde ut:

  • Utlösare: En Git-händelse (t.ex. en git push).
  • Bygg: Koden kompileras, beroenden installeras och byggartefakter skapas.
  • Test: Automatiserade tester (enhets-, integrations- och end-to-end-tester) körs mot den byggda koden.
  • Distribuera: Om testerna lyckas distribueras artefakterna till en målmiljö (t.ex. staging eller produktion).

Enkelt CI/CD-arbetsflöde

Vi tittar på en enkel arbetsflödesfil för GitHub Actions. Den här YAML-konfigurationen definierar en enkel pipeline som körs vid varje push till branchen main.

Den checkar ut koden och skriver sedan ut ett meddelande.

name: Basic CI Workflow

on:
  push:
    branches: [ main ]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - name: Say Hello
      run: echo "Hello CI/CD from Git!"

Selektiva pipelineutlösare

Du kan optimera CI/CD genom att bara utlösa pipelines för specifika brancher eller ändringar.

Du kanske till exempel bara vill köra en fullständig distributionspipeline när ändringar pushas till main eller develop, så att resurser sparas för featurebrancher.

Många CI/CD-verktyg låter dig ange branchmönster, sökvägar eller committyper som utlösare.

Hoppa över CI/CD-körningar

Ibland gör du kanske en liten commit (t.ex. för att rätta ett stavfel) som inte kräver en fullständig CI/CD-körning.

De flesta CI/CD-plattformar har stöd för särskilda nyckelord i commit-meddelanden som gör att en pipeline hoppas över. Vanliga exempel är:

  • [skip ci]
  • [ci skip]
  • [no ci]

Om du lägger till detta i commit-meddelandet förhindrar du onödiga byggen.

Kvalitetsgrindar med Git

CI/CD-verktyg kan rapportera statusen för byggen och tester direkt tillbaka till din Git-hostingtjänst.

Det gör att du kan konfigurera skyddade brancher. För skyddade brancher kan du tillämpa regler som:

  • Att alla CI/CD-statuskontroller måste godkännas innan en merge.
  • Att ett minsta antal kodgranskningar måste godkännas.

Detta säkerställer att endast testad kod av hög kvalitet hamnar i kritiska brancher.

Automatiserade distributioner

Den del av CI/CD som kallas ”Continuous Deployment” innebär ofta att pipelinen automatiskt distribuerar applikationen efter att byggen och tester har lyckats.

Det kan innebära att:

  • Molntjänster uppdateras (t.ex. AWS och Azure).
  • Applikationer distribueras till Kubernetes-kluster.
  • Nya paket pushas till artefaktarkiv.

Git säkerställer att den distribuerade versionen alltid motsvarar den senaste godkända koden.

Kontroll av CI/CD-utlösare

Vi kontrollerar snabbt dina kunskaper om hur Git meddelar CI/CD-verktyg.

Sammanfattning: Git och CI/CD

Du har lärt dig hur grundläggande Git är för CI/CD-arbetsflöden! Vi gick igenom:

  • Git-händelser som utlöser pipelines via webhooks.
  • De typiska stegen i en CI/CD-pipeline.
  • Konfiguration av grundläggande arbetsflöden och optimering av utlösare.
  • Användning av commit-meddelanden för att hoppa över CI/CD-körningar.
  • Användning av statuskontroller och skyddade brancher för kvalitetssäkring.

Git möjliggör automatisering och säkerställer en effektiv och tillförlitlig leverans av programvara.

Gratis att börja

Lär dig Avancerad Git: monorepon, submoduler och arbetsflöden med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
12
Lektioner
48

Vanliga frågor

Är lektionen ”Git-integrering med CI/CD” gratis?

Ja – hela texten till ”Git-integrering med CI/CD” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Avancerad Git: monorepon, submoduler och arbetsflöden, kan Ni uppgradera till CoddyKit PRO. Kursen i Avancerad Git: monorepon, submoduler och arbetsflöden innehåller totalt 4 lektioner.

Vad lär jag mig i ”Git-integrering med CI/CD”?

Konfigurera och optimera Git-integrering med populära CI/CD-plattformar för att utlösa automatiserade byggen, tester och distributioner. Ni övar på Avancerad Git: monorepon, submoduler och arbetsflöden med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Avancerad Git: monorepon, submoduler och arbetsflöden?

Du behöver inga förkunskaper. Utbildningen i Avancerad Git: monorepon, submoduler och arbetsflöden på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.

Hur lång tid tar lektionen ”Git-integrering med CI/CD”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Avancerad Git: monorepon, submoduler och arbetsflöden-lektionen?

Ja. Varje Avancerad Git: monorepon, submoduler och arbetsflöden-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. GitOps-principer och implementering
  2. Automatisera Git-uppgifter med skript
  3. Git-integrering med CI/CD
  4. Säkra Git i DevOps: hemligheter, signering och hooks
← Tillbaka till Avancerad Git: monorepon, submoduler och arbetsflöden