Git

Как работает подмодуль git?

Как работает подмодуль git?
Подмодуль Git - это подкаталог Git или компонент другого хоста, репозитория Git, который просто ссылается на конкретную фиксацию в другом внешнем репозитории Git. Подмодули статичны и отслеживают только определенные коммиты. Они не отслеживают ветки или ссылки Git и не обновляются автоматически с репозиторием хоста. Подмодули Git позволяют включить репозиторий Git для включения и отслеживания истории версий всего внешнего кода. Когда пользователь включает подмодуль в репозиторий Git, новый файл с именем .gitmodules создаст.

В этой статье мы дадим вам представление о том, как использовать подмодули Git во внешнем репозитории Git в системе Linux.

Предпосылки

Убедитесь, что Git уже установлен в вашей системе.

Чтобы проверить установку Git, введите в терминале следующую команду:

$ git -version


Мы реализовали все команды, связанные с подмодулями Git в дистрибутиве CentOS 8 Linux, которые мы подробно обсудим в следующих шагах:

Когда следует использовать подмодули Git?

Для строгого управления версиями внешних зависимостей вашего проекта вы можете использовать функции подмодулей Git. Ниже приведены сценарии, в которых вы можете использовать подмодули git:

Добавить новый подмодуль Git

Команда Git submodule add используется для добавления нового подмодуля в существующий репозиторий Git. Откройте терминал на левой боковой панели в системе CentOS 8. Используя следующий пример, мы можем лучше объяснить, в котором мы создадим новый пустой репозиторий Git, а затем добавим подмодули Git.

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


В вышеупомянутых командах сначала мы создали новый каталог с именем 'git-submodule-demo' и переходим в этот каталог. Мы инициализировали этот каталог как новый репозиторий Git.

Теперь добавьте новый подмодуль Git с помощью команды git submodule add, в которой мы использовали URL-адрес в качестве параметра, относящегося к определенному репозиторию Git. Мы добавили подмодуль awesomelibrary в созданный выше репозиторий.

Подмодуль $ git добавить https: // bitbucket.org / jaredw / awesomelibrary


Git клонирует этот подмодуль. После завершения процесса подмодуля вы можете проверить текущий статус своего репозитория git, выполнив следующую команду:

$ git status


Когда вы запустите приведенную выше команду на терминале CentOS 8, вы заметите, что в этом репозитории есть два новых файла. Один '.gitmodules 'и' awesomelibrary '. Теперь вы можете зафиксировать эти файлы в исходном репозитории Git, выполнив команды git add и git commit.

$ git add .gitmodules awesomelibrary /

$ git commit -m "добавленный подмодуль"

Клонировать подмодули Git

Клонируйте подмодули с помощью команды Gsit clone. Приведенная ниже команда создаст каталоги, содержащие подмодули, но вы не можете увидеть файл внутри них.

$ git clone https: // битбакет.org / jaredw / awesomelibrary / подмодули


Для создания файлов подмодулей используются две дополнительные команды. Один из них -.git submodule init 'который копирует'.gitmodules 'отображение в локальное'.git / config 'файл. Команда git submodule update обновляет все данные проекта подмодуля и проверяет изменения в родительском проекте.

$ git submodule init
$ git обновление подмодуля


Теперь мы перейдем в каталог подмодуля awesomelibrary. Мы создадим текстовый файл с именем new_awesome.txt ', добавив некоторый контент.

$ cd awesomelibrary /
$ git checkout -b new_awesome
$ echo "новый классный файл"> new_awesome.текст
$ git status


Здесь мы добавим и зафиксируем изменения этого нового файла в подмодуле.

$ git add new_awesome.текст
$ git commit -m "добавлен новый потрясающий текстовый файл"


Теперь перейдите в родительский репозиторий и просмотрите статус родительского репозитория.

$ cd…
$ git status


Как видите, awesomelibrary была изменена.

Заключение

В этой статье мы видели, что с помощью подмодуля Git вы можете легко использовать репозиторий Git в качестве внешнего инструмента управления зависимостями. Прежде чем реализовывать эту функцию Git, ознакомьтесь с использованием и недостатками подмодулей Git, а затем примените ее.

Левая кнопка мыши не работает в Windows 10
Если вы используете выделенную мышь со своим ноутбуком или настольным компьютером, но левая кнопка мыши не работает в Windows 10/8/7 по какой-то причи...
Курсор прыгает или перемещается случайным образом при наборе текста в Windows 10
Если вы обнаружите, что ваш курсор мыши прыгает или перемещается сам по себе, автоматически, случайным образом при вводе текста на ноутбуке или компью...
Как изменить направление прокрутки мыши и сенсорной панели в Windows 10
Мышь а также Сенсорная панельs не только упрощают вычисления, но и делают их более эффективными и требуют меньше времени. Мы не можем представить себе...