Avanceret Git: Monorepoer, undermoduler og arbejdsgange · Lektion

Integration af Git med CI/CD

Konfigurér og optimér Git-integration med populære CI/CD-platforme for at udløse automatiserede builds, tests og deployments.

Lektion 3 af 411 trin

Integration af Git med CI/CD er en gratis Avanceret Git: Monorepoer, undermoduler og arbejdsgange-lektion på CoddyKit. Dette er lektion 3 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Avanceret Git: Monorepoer, undermoduler og arbejdsgange, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Avanceret Git: Monorepoer, undermoduler og arbejdsgange-kurset indeholder 4 lektioner i alt.

Gits rolle i CI/CD

Velkommen! I denne lektion undersøger vi, hvordan Git integreres med procesforløb til kontinuerlig integration (CI) og kontinuerlig udrulning (CD).

CI/CD automatiserer processen med at bygge, teste og udrulle software. Git er kernen i processen og fungerer som udløser for disse automatiserede arbejdsgange.

Webhooks: Gits budbringer

Den primære måde, Git kommunikerer med CI/CD-værktøjer på, er gennem webhooks.

  • En webhook er en automatiseret HTTP POST-anmodning.
  • Git-hostingtjenester (som GitHub, GitLab og Bitbucket) sender disse anmodninger.
  • De underretter dit CI/CD-system om hændelser som et nyt code push eller en pull request.

Konfiguration af en Git-webhook

Det er normalt enkelt at konfigurere en webhook:

  1. Gå til indstillingerne for dit repository hos din Git-hostingtjeneste.
  2. Find afsnittet 'Webhooks' eller 'Integrations'.
  3. Tilføj en ny webhook, og angiv URL'en til dit CI/CD-værktøj.
  4. Vælg, hvilke Git-hændelser (f.eks. push og pull request) der skal udløse webhooken.

Forløbet i et CI/CD-procesforløb

Når en webhook udløses, går dit CI/CD-procesforløb i gang. Her er et typisk forløb:

  • Udløser: En Git-hændelse (f.eks. et git push).
  • Byg: Koden kompileres, afhængigheder installeres, og byggeartefakter oprettes.
  • Test: Automatiserede test (enheds-, integrations- og ende-til-ende-test) køres på den byggede kode.
  • Udrul: Hvis testene består, udrulles artefakterne til et målmiljø (f.eks. staging eller produktion).

Enkel CI/CD-arbejdsgang

Lad os se på en grundlæggende GitHub Actions-arbejdsgangsfil. Denne YAML-konfiguration definerer et enkelt procesforløb, der køres ved hvert push til grenen main.

Den tjekker koden ud og udskriver derefter en meddelelse.

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!"

Selektive udløsere af procesforløb

Du kan optimere CI/CD ved kun at udløse procesforløb for bestemte grene eller ændringer.

Du vil f.eks. måske kun køre et komplet udrulningsforløb, når ændringer pushes til main eller develop, så du sparer ressourcer på funktionsgrene.

Mange CI/CD-værktøjer giver dig mulighed for at angive grenmønstre, stier eller commit-typer for udløsere.

Spring CI/CD-kørsler over

Nogle gange laver du måske et lille commit (f.eks. for at rette en slåfejl), som ikke kræver en komplet CI/CD-kørsel.

De fleste CI/CD-platforme understøtter særlige nøgleord i commit-meddelelser, så en kørsel af procesforløbet kan springes over. Almindelige eksempler er:

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

Hvis du føjer dette til din commit-meddelelse, forhindrer du unødvendige builds.

Kvalitetskontroller med Git

CI/CD-værktøjer kan rapportere status for builds og test direkte tilbage til din Git-hostingtjeneste.

Det giver dig mulighed for at konfigurere beskyttede grene. Med beskyttede grene kan du håndhæve regler som:

  • At alle CI/CD-statuskontroller skal bestå, før en fletning.
  • At et minimumsantal kodegennemgange skal være godkendt.

Det sikrer, at kun kode af høj kvalitet, som er testet, lander i kritiske grene.

Automatiserede udrulninger

Den del af CI/CD, der kaldes 'Continuous Deployment', betyder ofte, at procesforløbet automatisk udruller din applikation efter vellykkede builds og test.

Det kan omfatte:

  • Opdatering af cloud-tjenester (f.eks. AWS og Azure).
  • Udrulning til Kubernetes-klynger.
  • Push af nye pakker til artefaktrepositories.

Git sikrer, at den udrullede version altid afspejler den senest godkendte kode.

Kontrol af CI/CD-udløsere

Lad os hurtigt kontrollere din forståelse af, hvordan Git underretter CI/CD-værktøjer.

Opsummering: Git og CI/CD

Du har lært, at Git er grundlæggende for CI/CD-arbejdsgange! Vi gennemgik:

  • Git-hændelser, der udløser procesforløb via webhooks.
  • De typiske faser i et CI/CD-procesforløb.
  • Konfiguration af grundlæggende arbejdsgange og optimering af udløsere.
  • Brug af commit-meddelelser til at springe CI/CD-kørsler over.
  • Brug af statuskontroller og beskyttede grene til kvalitetssikring.

Git muliggør automatisering og sikrer effektiv og pålidelig levering af software.

Gratis at komme i gang

Lær Avanceret Git: Monorepoer, undermoduler og arbejdsgange med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
12
Lektioner
48

Ofte stillede spørgsmål

Er lektionen “Integration af Git med CI/CD” gratis?

Ja — hele teksten til “Integration af Git med CI/CD” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Avanceret Git: Monorepoer, undermoduler og arbejdsgange-kurset, skal du opgradere til CoddyKit PRO. Avanceret Git: Monorepoer, undermoduler og arbejdsgange-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Integration af Git med CI/CD”?

Konfigurér og optimér Git-integration med populære CI/CD-platforme for at udløse automatiserede builds, tests og deployments. Du øver dig i Avanceret Git: Monorepoer, undermoduler og arbejdsgange med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Avanceret Git: Monorepoer, undermoduler og arbejdsgange?

Der kræves ingen tidligere erfaring. Avanceret Git: Monorepoer, undermoduler og arbejdsgange på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 3 af 4.

Hvor lang tid tager lektionen “Integration af Git med CI/CD”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Avanceret Git: Monorepoer, undermoduler og arbejdsgange-lektion?

Ja. Alle Avanceret Git: Monorepoer, undermoduler og arbejdsgange-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Principper og implementering af GitOps
  2. Automatisering af Git-opgaver med scripts
  3. Integration af Git med CI/CD
  4. Sikring af Git i DevOps: secrets, signing og hooks
← Tilbage til Avanceret Git: Monorepoer, undermoduler og arbejdsgange