Introduksjon til Git Submodules
Forstå hva Git Submodules er, hvilke bruksområder de har, og når de egner seg som løsning for avhengighetsadministrasjon.
Introduksjon til Git Submodules er en gratis leksjon i Git videregående: Monorepo, Submodules og arbeidsflyter på CoddyKit. Dette er leksjon 1 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Git videregående: Monorepo, Submodules og arbeidsflyter, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Git videregående: Monorepo, Submodules og arbeidsflyter inneholder totalt 4 leksjoner.
Velkommen til submoduler
Hva er Git Submodules? De lar deg bygge inn ett Git-repositorium i et annet som en underkatalog. Det er som å ha et separat prosjekt inne i hovedprosjektet, samtidig som det fortsatt administreres uavhengig.
Hvorfor bruke submoduler?
Se for deg at prosjektet ditt trenger et bestemt bibliotek eller en komponent som utvikles og vedlikeholdes separat. I stedet for å kopiere koden kan du bruke en submodul.
- Leverandørkode: Inkluder tredjepartsbiblioteker.
- Delte komponenter: Gjenbrukbar kode på tvers av flere prosjekter.
- Plugin-systemer: Gjør deler av en større applikasjon modulære.
Et repositorium i et repositorium
En submodul er ikke bare en mappe med filer. Den er en peker til en bestemt commit i et annet Git-repositorium. Hovedprosjektet sporer hvilken commit i submodulen det skal bruke.
Det betyr at hovedprosjektet ikke administrerer innholdet i submodulen direkte, men heller referansen til det.
Slik sporer Git submoduler
Git lagrer submoduler som en spesialoppføring i indeksen til hovedrepositoriet. Den registrerer submodulens sti, URL-en til det eksterne repositoriet og den spesifikke commit-hashen den peker på.
Når du kloner et prosjekt med submoduler, ser du først tomme kataloger frem til du initialiserer og oppdaterer dem.
Submodulens uavhengige liv
Hver submodul er sitt eget selvstendige Git-repositorium. Du kan klone det, bytte gren, opprette commits og pushe dem, alt uavhengig av hovedrepositoriet.
Denne isolasjonen er viktig for å administrere eksterne avhengigheter uten å slå sammen historikken deres med hovedprosjektet.
Vanlige bruksområder
Submoduler egner seg godt til:
- Stabile avhengigheter: Når du trenger en bestemt versjon av et eksternt bibliotek og ikke vil at det skal endres uventet.
- Store komponenter: Dele opp et monolittisk prosjekt i mindre, håndterbare deler som versjoneres uavhengig.
- Bidrag til åpen kildekode: Integrere eksterne verktøy eller rammeverk uten å vedlikeholde kildekoden deres direkte.
Når submoduler virkelig kommer til sin rett
De er spesielt nyttige når:
- Du må spore en bestemt versjon av en avhengighet, ikke bare den nyeste.
- Avhengigheten administreres av et annet team eller prosjekt.
- Du vil holde avhengighetens historikk atskilt fra hovedprosjektets historikk.
Filen .gitmodules
Når du legger til en submodul, oppretter Git en egen konfigurasjonsfil i roten av hovedrepositoriet: .gitmodules.
Denne filen lagrer koblingen mellom submodulens lokale sti og den eksterne URL-en. Den er versjonskontrollert, slik at alle som kloner prosjektet, kjenner til submodulene.
[submodule "library"]
path = lib/my-library
url = https://github.com/user/my-library.gitSubtree kontra submodul (kort fortalt)
Selv om submoduler er nyttige, finnes det alternativer. Et kjent alternativ er Git Subtree.
Submoduler holder avhengighetens historikk atskilt, mens Git Subtree integrerer avhengighetens historikk direkte i hovedrepositoriet. Vi utforsker Subtree i en senere leksjon!
Kort sjekk av submoduler
La oss sjekke hvor godt du har forstått Git-submoduler.
Oppsummering: Introduksjon til submoduler
Vi har introdusert Git-submoduler og sett på dem som en måte å bygge inn uavhengige Git-repositorier i hovedprosjektet på.
- De sporer bestemte commits i eksterne repositorier.
- De løser utfordringer knyttet til delt kode og stabile avhengigheter.
- De konfigureres via filen
.gitmodules.
Deretter lærer vi hvordan du legger til og kloner submoduler.
Lær deg Git videregående: Monorepo, Submodules og arbeidsflyter med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 12
- Leksjoner
- 48
Ofte stilte spørsmål
Er leksjonen «Introduksjon til Git Submodules» gratis?
Ja – hele teksten i «Introduksjon til Git Submodules» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Git videregående: Monorepo, Submodules og arbeidsflyter-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Git videregående: Monorepo, Submodules og arbeidsflyter inneholder totalt 4 leksjoner.
Hva lærer jeg i «Introduksjon til Git Submodules»?
Forstå hva Git Submodules er, hvilke bruksområder de har, og når de egner seg som løsning for avhengighetsadministrasjon. Du øver på Git videregående: Monorepo, Submodules og arbeidsflyter med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Git videregående: Monorepo, Submodules og arbeidsflyter?
Ingen tidligere erfaring er nødvendig. Git videregående: Monorepo, Submodules og arbeidsflyter på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.
Hvor lang tid tar leksjonen «Introduksjon til Git Submodules»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Git videregående: Monorepo, Submodules og arbeidsflyter-leksjonen?
Ja. Alle Git videregående: Monorepo, Submodules og arbeidsflyter-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Introduksjon til Git Submodules
- Legge til og klone submoduler
- Oppdatere og synkronisere submoduler
- Fjerne og avinitialisere submoduler