Git

Hvordan fungerer git submodule?

Hvordan fungerer git submodule?
Git-undermodul er en Git-underkatalog eller komponent i en anden vært, Git-arkiv, der simpelthen henviser til et specifikt engagement i et andet eksternt Git-arkiv. Undermoduler er statiske og holder kun styr på de bestemte forpligtelser. De sporer ikke Git-grene eller refs og opdateres ikke automatisk med værtsregistret. Git-undermoduler giver dig mulighed for at aktivere Git-arkivet til at inkorporere og spore versionshistorikken for al ekstern kode. Når en bruger inkluderer en undermodul til et Git-arkiv, en ny fil med navnet .gitmodules vil oprette.

I denne artikel vil vi give dig en idé om, hvordan du bruger Git-undermoduler i en ekstern Git-repo i Linux-systemet.

Forudsætninger

Sørg for, at Git allerede er installeret på dit system.

For at kontrollere installationen af ​​Git skal du skrive følgende kommando på din terminal:

$ git -version


Vi har implementeret alle kommandoer relateret til Git-undermoduler på CentOS 8 Linux-distribution, som vi vil diskutere detaljeret i nedenstående trin:

Hvornår skal Git-submoduler bruges?

For streng versionshåndtering af dit projekts eksterne afhængigheder, kan du bruge Git-undermodulfunktioner. Følgende er scenarier for, hvor du kan bruge git-undermoduler:

Tilføj nyt Git-undermodul

Kommandoen Git submodule add bruges til at føje en ny submodule til et eksisterende Git-arkiv. Åbn terminalen fra venstre sidepanel i CentOS 8-systemet. Ved hjælp af følgende eksempel kan vi forklare bedre, hvor vi opretter et nyt tomt Git-arkiv og derefter tilføjer Git-undermoduler.

$ mkdir git-submodule-demo
$ cd git-submodule-demo /
$ git init


I de ovennævnte kommandoer har vi først oprettet en ny mappe med navnet 'git-submodule-demo' og navigerer i denne mappe. Vi har initialiseret denne mappe som et nyt Git-arkiv.

Tilføj nu et nyt Git-undermodul ved hjælp af kommandoen 'git submodule add', hvor vi har brugt URL som en parameter, der henviser til et bestemt Git-lager. Vi har tilføjet et undermodul 'awesomelibrary' i ovenstående nyoprettede lager.

$ git-undermodul tilføj https: // bitbucket.org / jaredw / awesomelibrary


Git vil klone denne undermodul. Når submodulprocessen er afsluttet, kan du kontrollere den aktuelle status for dit git-arkiv ved at køre følgende kommando:

$ git status


Når du kører ovenstående kommando på CentOS 8-terminalen, vil du bemærke, at der er to nye filer i dette lager. Den ene er '.gitmodules 'og' awesomelibrary '. Nu kan du forpligte disse filer til det originale Git-arkiv ved at udføre kommandoerne 'git add' og 'git commit'.

$ git tilføj .gitmodules awesomelibrary /

$ git commit -m "tilføjet undermodul"

Klon Git-undermoduler

Klon submodulerne ved hjælp af Gsit-klonkommandoen. Nedenstående kommando opretter mapper, der indeholder undermoduler, men du kan ikke se filen inde i dem.

$ git klon https: // bitbucket.org / jaredw / awesomelibrary / submodules


Der er to ekstra kommandoer, der bruges til at oprette submodulfiler. Den ene er '.git submodule init 'at kopierer'.gitmodules 'kortlægning til det lokale'.git / config-fil. Kommandoen 'git submodule update' opdaterer alle data i submodule-projektet og verificerer ændringerne i det overordnede projekt.

$ git submodule init
$ git-undermodulopdatering


Nu vil vi navigere ind i det undermodulære katalog under awesomelibrary. Vi opretter en tekstfil med navnet 'new_awesome.txt 'ved at tilføje noget indhold.

$ cd awesomelibrary /
$ git checkout -b new_awesome
$ echo "new awesome file"> new_awesome.txt
$ git status


Her vil vi tilføje og forpligte ændringer til denne nye fil til undermodulen.

$ git tilføj new_awesome.txt
$ git commit -m "tilføjet ny fantastisk tekstfil"


Gå nu ind i det overordnede lager og gennemgå status for det overordnede lager.

$ cd ..
$ git status


Som du kan se, er 'awesomelibrary' blevet ændret.

Konklusion

Vi har set i denne artikel, at du ved hjælp af Git-undermodulen let kan bruge Git-repoen som et eksternt afhængighedsstyringsværktøj. Gå igennem brugen og ulemperne ved Git-undermoduler, inden du implementerer denne Git-funktion, og vedtag den derefter.

Mus Sådan ændres musemarkør og markørstørrelse, farve og skema på Windows 10
Sådan ændres musemarkør og markørstørrelse, farve og skema på Windows 10
Musemarkøren og markøren i Windows 10 er meget vigtige aspekter af operativsystemet. Dette kan også siges om andre operativsystemer, så i sandhed er d...
Gratis og open source-spilmotorer til udvikling af Linux-spil
Denne artikel dækker en liste over gratis og open source-spilmotorer, der kan bruges til at udvikle 2D- og 3D-spil på Linux. Der er mange sådanne spil...
Shadow of the Tomb Raider til Linux-vejledning
Shadow of the Tomb Raider er den tolvte tilføjelse til Tomb Raider-serien - en action-adventure-spilfranchise oprettet af Eidos Montreal. Spillet blev...