Git videregående: Monorepo, Submodules og arbeidsflyter · leksjon

Fjerne og avinitialisere submoduler

Lær den riktige og komplette fremgangsmåten for å fjerne en Git-submodul fra et repository, inkludert avinitialisering, opprydding i .gitmodules og hvordan du unngår resterende tilstand.

Leksjon 4 av 413 trinn

Fjerne og avinitialisere submoduler er en gratis leksjon i Git videregående: Monorepo, Submodules og arbeidsflyter på CoddyKit. Dette er leksjon 4 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.

Når du må fjerne en submodul

Undermoduler legges til for å hente inn ekstern kode, men kravene endrer seg. Det kan hende De må fjerne en undermodul når avhengigheten erstattes, leverandørkoden legges direkte inn, eller den ganske enkelt ikke lenger trengs.

Det er mer omfattende enn å slette en mappe: En undermodul finnes flere steder samtidig, og hvis ett av stedene overses, blir repositoriet ødelagt.

Hvor en undermodul finnes

En undermodul har tre spor:

  • .gitmodules — den deklarative konfigurasjonen
  • .git/config — den lokale aktive konfigurasjonen
  • .git/modules/<path> — de bufrede Git-dataene for undermodulen

I tillegg kommer selve mappen i arbeidsområdet. En fullstendig fjerning berører alle disse.

Trinn 1: Deinitialiser

Start med git submodule deinit. Dette avregistrerer undermodulen og fjerner oppføringen fra .git/config, mens resten foreløpig blir liggende.

git submodule deinit -f path/to/submodule

Trinn 2: Fjern fra indeksen

Bruk git rm for å fjerne undermodulen fra versjonssporingen og arbeidsområdet. I moderne Git oppdaterer dette også .gitmodules automatisk.

git rm -f path/to/submodule

Trinn 3: Rydd opp i bufrede Git-data

Undermodulens Git-data blir liggende under .git/modules. Fjern dem slik at en fremtidig undermodul med samme sti ikke skaper en konflikt.

rm -rf .git/modules/path/to/submodule

Kontroller at .gitmodules er ryddig

Åpne .gitmodules og bekreft at blokken [submodule "..."] er borte. Hvis git rm har etterlatt en tom fil eller en foreldet oppføring, må De rette dette manuelt og klargjøre endringen.

git diff --cached .gitmodules

Trinn 4: Bekreft fjerningen

Fjerningen må bekreftes i en commit slik at alle som samarbeider, får endringen. Commiteren inneholder den slettede mappen, den oppdaterte .gitmodules-filen og den fjernede indeksoppføringen.

git commit -m 'Remove path/to/submodule'

Manuelt alternativ

I eldre Git-versjoner redigerer git rm kanskje ikke .gitmodules for Dem. Den manuelle fremgangsmåten er:

git config -f .gitmodules --remove-section submodule.path/to/submodule
git add .gitmodules
git rm --cached path/to/submodule
rm -rf path/to/submodule

Dette ser andre som samarbeider

Når andre henter commiten som fjerner undermodulen, forsvinner mappen fra versjonssporingen. Den lokale hurtigbufferen i .git/modules og oppføringen i .git/config kan likevel bli liggende. Be dem kjøre git submodule sync og rydde opp ved behov.

Vanlige feil

  • Å bare slette mappen med rm -rf — dette etterlater en ødelagt indeksoppføring
  • Å glemme å rydde opp i .git/modules — dette hindrer at samme sti legges til på nytt
  • Å ikke bekrefte endringen i .gitmodules — andre ser fortsatt undermodulen

En sjekkliste som kan gjenbrukes

Gå gjennom følgende hver gang De fjerner en undermodul: deinit, rm, rydd opp i moduler-hurtigbufferen, kontroller .gitmodules, bekreft. Når De alltid følger samme rekkefølge, unngår De delvis fjernede tilstander som forvirrer hele teamet.

Kort kontroll

Test forståelsen Deres av hvordan undermoduler fjernes.

Oppsummering

De har lært hele fremgangsmåten for fjerning: deinit for å avregistrere, git rm for å fjerne versjonssporingen, rydde opp i .git/modules for å tømme hurtigbufferen, kontrollere .gitmodules og deretter bekrefte. Når De følger denne sjekklisten hver gang, holder både repositoriet og klonene til de andre som samarbeider, seg i god stand.

Gratis å komme i gang

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 «Fjerne og avinitialisere submoduler» gratis?

Ja – hele teksten i «Fjerne og avinitialisere submoduler» 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 «Fjerne og avinitialisere submoduler»?

Lær den riktige og komplette fremgangsmåten for å fjerne en Git-submodul fra et repository, inkludert avinitialisering, opprydding i .gitmodules og hvordan du unngår resterende tilstand. 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 4 av 4.

Hvor lang tid tar leksjonen «Fjerne og avinitialisere submoduler»?

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

  1. Introduksjon til Git Submodules
  2. Legge til og klone submoduler
  3. Oppdatere og synkronisere submoduler
  4. Fjerne og avinitialisere submoduler
← Tilbake til Git videregående: Monorepo, Submodules og arbeidsflyter