Avanceret Git: Monorepoer, undermoduler og arbejdsgange · Lektion

Introduktion til Git-submodules

Forstå, hvad Git-submodules er, deres anvendelsesområder, og hvornår de er en egnet løsning til håndtering af afhængigheder

Lektion 1 af 411 trin

Introduktion til Git-submodules er en gratis Avanceret Git: Monorepoer, undermoduler og arbejdsgange-lektion på CoddyKit. Dette er lektion 1 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.

Velkommen til submoduler

Hvad er Git Submodules? De giver dig mulighed for at indlejre ét Git-repository i et andet som en undermappe. Det svarer til at have et separat projekt inde i dit hovedprojekt, men stadig administreret uafhængigt.

Hvorfor bruge submodules?

Forestil dig, at dit projekt har brug for et bestemt bibliotek eller en bestemt komponent, som udvikles og vedligeholdes separat. I stedet for at kopiere koden kan du bruge et submodule.

  • Leverandørkode: Inkludér tredjepartsbiblioteker.
  • Delte komponenter: Genbrugelig kode på tværs af flere projekter.
  • Plug-in-systemer: Gør dele af en større applikation modulære.

Et repository i et repository

Et submodule er ikke bare en mappe med filer. Det er en pegepind til en bestemt commit i et andet Git-repository. Dit hovedprojekt holder styr på, hvilken commit fra submodulet det skal bruge.

Det betyder, at dit hovedprojekt ikke administrerer indholdet i submodulet direkte, men i stedet dets reference.

Sådan holder Git styr på submodules

Git gemmer submodules som en særlig post i hovedrepositoryets indeks. Det registrerer submodulets sti, URL'en til dets fjernrepository og den specifikke commit-hash, som det peger på i øjeblikket.

Når du kloner et projekt med submodules, ser du først tomme mapper, indtil du initialiserer og opdaterer dem.

Submodulets selvstændige liv

Hvert submodule er sit eget selvstændige Git-repository. Du kan klone det, skifte branch, committe ændringer og pushe dem, alt sammen uafhængigt af det overordnede repository.

Denne adskillelse er vigtig, når du vil administrere eksterne afhængigheder uden at flette deres historik ind i dit hovedprojekt.

Almindelige anvendelser

Submodules er fremragende til:

  • Stabile afhængigheder: Når du har brug for en bestemt version af et eksternt bibliotek og ikke ønsker, at det ændrer sig uventet.
  • Store komponenter: Opdeling af et monolitisk projekt i mindre, håndterbare dele, der versionsstyres uafhængigt.
  • Bidrag til open source: Integration af eksterne værktøjer eller frameworks uden selv at vedligeholde deres kildekode.

Når submodules er særligt nyttige

De er især nyttige, når:

  • Du har brug for at følge en bestemt version af en afhængighed og ikke bare den nyeste.
  • Afhængigheden administreres af et andet team eller projekt.
  • Du vil holde afhængighedens historik adskilt fra dit hovedprojekts historik.

Filen .gitmodules

Når du tilføjer et submodule, opretter Git en særlig konfigurationsfil i roden af dit hovedrepository: .gitmodules.

Denne fil gemmer sammenhængen mellem submodulets lokale sti og dets fjern-URL. Den versionsstyres, så alle, der kloner dit projekt, kender dets submodules.

[submodule "library"]
  path = lib/my-library
  url = https://github.com/user/my-library.git

Subtree kontra submodule (kort fortalt)

Selvom submodules er gode, findes der alternativer. En bemærkelsesværdig mulighed er Git Subtree.

Submodules holder afhængighedens historik adskilt, mens Git Subtree integrerer afhængighedens historik direkte i dit hovedrepository. Vi udforsker Subtree i en senere lektion!

Hurtig kontrol af din viden om submodules

Lad os kontrollere din forståelse af Git-submodules.

Opsummering: Introduktion til submodules

Vi har introduceret Git-submodules og set dem som en måde at indlejre selvstændige Git-repositories i dit hovedprojekt på.

  • De følger bestemte commits i eksterne repositories.
  • De løser problemer med delt kode og stabile afhængigheder.
  • De konfigureres via filen .gitmodules.

Dernæst lærer du, hvordan du tilføjer og kloner submodules.

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 “Introduktion til Git-submodules” gratis?

Ja — hele teksten til “Introduktion til Git-submodules” 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 “Introduktion til Git-submodules”?

Forstå, hvad Git-submodules er, deres anvendelsesområder, og hvornår de er en egnet løsning til håndtering af afhængigheder 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 1 af 4.

Hvor lang tid tager lektionen “Introduktion til Git-submodules”?

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. Introduktion til Git-submodules
  2. Tilføjelse og kloning af submodules
  3. Opdatering og synkronisering af submodules
  4. Fjernelse og deinitialisering af submodules
← Tilbage til Avanceret Git: Monorepoer, undermoduler og arbejdsgange