Jak działa git submodule?

Jak działa git submodule?
GIT Smoduł to podwodnik GIT lub komponent innego hosta, GIT Repository, który po prostu odnosi się do konkretnego zatwierdzenia w innym zewnętrznym repozytorium GIT. Podmoduły są statyczne i śledzą tylko konkretne zatwierdzenia. Nie śledzą gałęzi ani odniesień git i nie są aktualizowane automatycznie o repozytorium hosta. GIT Smurmodules umożliwia włączenie repozytorium GIT i śledzenie historii wersji wszystkich kodów zewnętrznych. Gdy użytkownik zawiera submoduł do repozytorium GIT, nowy plik o nazwie .Gitmodules stworzy.

W tym artykule damy Ci wyobrażenie o tym, jak używać git submodules w zewnętrznym repozytorium git w systemie Linux.

Wymagania wstępne

Upewnij się, że GIT jest już zainstalowany w twoim systemie.

Aby zweryfikować instalację GIT, wpisz następujące polecenie na terminalu:

$ git -version


Wdrożyliśmy wszystkie polecenia związane z submodułami GIT na dystrybucji Linux Centos 8, które omówimy szczegółowo w poniżej wspomnianych krokach:

Kiedy należy użyć podmodułów git?

Aby uzyskać ścisłe zarządzanie wersją zewnętrznych zależności projektu, możesz użyć funkcji GIT Smubodules. Poniżej znajdują się scenariusze, w których można używać git submodules:

  • Gdy komponent podprojektowy lub zewnętrzny zmienia się szybko, lub nadchodzące zmiany mogą przerwać skonfigurowany interfejs API, w tej sytuacji zablokuj kod dla konkretnego zatwierdzenia bezpieczeństwa projektu.
  • Kiedy masz konkretny projekt z stroną trzecią i chcą zintegrować nową wersję w Twoim projekcie.

Dodaj nowy submoduł GIT

Polecenie dodawania submodułu GIT służy do dodania nowego submodułu do istniejącego repozytorium GIT. Otwórz terminal z lewego panelu paska bocznego w systemie Centos 8. Korzystając z poniższego przykładu, możemy lepiej wyjaśnić, w którym utworzymy nowe puste repozytorium GIT, a następnie dodamy submoduły GIT.

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


W wyżej wymienionych poleceń, po pierwsze, stworzyliśmy nowy katalog o nazwie „Git-submodule-Demo” i poruszają się w tym katalogu. Zainicjowaliśmy ten katalog jako nowe repozytorium GIT.

Teraz dodaj nowy submoduł GIT za pomocą polecenia „Dodaj submodule GIT”, w którym użyliśmy adresu URL jako parametru, który odnosi się do konkretnego repozytorium GIT. W powyższym nowo utworzonym repozytorium dodaliśmy submoduł „Awesomelibrary”.

$ git submodule Dodaj https: // bitbucket.Org/Jaredw/Awesomelibrary


Git sklonuje ten submoduł. Po zakończeniu procesu submodułu możesz sprawdzić bieżący status repozytorium GIT, uruchamiając następujące polecenie:

Status $ git


Po uruchomieniu powyższego polecenia na terminalu Centos 8 zauważysz, że dwa nowe pliki są w tym repozytorium. Jeden jest '.Gitmodules i „Awesomelibrary”. Teraz możesz zatwierdzić te pliki w oryginalnym repozytorium GIT, wykonując polecenia „Git Add” i „Git Commit”.

$ git add .GitModules Awesomelibrary/
$ git commit -m "Dodano submoduł"

Klon git submodules

Klon submoduły za pomocą polecenia GSIT Clone. Poniższe polecenie utworzy katalogi zawierające submoduły, ale nie widać w nich pliku.

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


Istnieją dwa dodatkowe polecenia używane do tworzenia plików submodułu. Jeden to '.Git Smodule init „ten kopie”.Gitmodules „mapowanie w lokalnym”.plik git/config '. Polecenie „GIT Submodule Aktualizacja” aktualizuje wszystkie dane projektu submodułu i weryfikuje zmiany w projekcie nadrzędnym.

$ git submodule init init
Aktualizacja submodułu $ git


Teraz będziemy nawigować do katalogu submodułu Awesomelibrary. Utworzymy plik tekstowy o nazwie „NEW_AWESHES.txt ', dodając trochę treści.

$ CD Awesomelibrary/
$ git kasu -b new_awesome
$ echo „nowy niesamowity plik”> new_awesome.tekst
Status $ git


Tutaj dodamy i popełnimy zmiany w tym nowym pliku do submodułu.

$ git Dodaj New_Awesome.tekst
$ git commit -m "Dodano nowy niesamowity plik tekstowy"


Teraz przejdź do repozytorium nadrzędnego i przejrzyj status repozytorium nadrzędnego.

$ CD…
Status $ git


Jak widać, „Awesomelibrary” został zmodyfikowany.

Wniosek

W tym artykule widzieliśmy, że za pomocą submodułu GIT możesz łatwo użyć GIT Repo jako zewnętrznego narzędzia zarządzania zależnością. Przed wdrożenie tej funkcji GIT przejrzyj zastosowania i wady git podmodułów.