2015-08-03 8 views
1

Я нашел проект github и использует git-подмодули.Как сделать git sub modules и почему использовать git sub module

Каково использование модульных модулей git?

Как создать git-модули?

Как они отличаются от поддерева?

GitSubModule

Благодаря

+0

Этот вопрос является слишком широким для переполнения стека. Кроме того, он не показывает очень много исследований. Поиск 'git subodule vs поддерева 'генерирует * lots * результатов, и Google даже предложил мне поиск, когда я вводил' subodule'. – Chris

+1

Лучший способ использования подмодулей: совсем нет. (Сделайте второй репо, создав артефакт сборки, на который вы можете положиться) – Daenyth

+0

@ Даенит - Да ... это тоже правильно! Но как вы думаете, есть ли недостаток в использовании подмодулей? – Manju

ответ

2

Git подмодуль:

Подмодуля в репозитории, как подкаталог, который является действительно отдельным репозиторием в своем собственном праве. Это полезная функция, когда у вас есть проект в мерзавце, который зависит от конкретной версии других проектов

Git поддерева:

Git поддерево позволяет вставлять любой репозиторий в качестве подкаталога другого .the подкаталог может стать постоянной частью супер проекта

Git поддерево субмодуля:

поддерево сливаться постоянно интегрирует содержание и историю поддерева в Паре nt в поддереве слияния.

Подмодуль - это просто ссылка на конкретную фиксацию в подмодуле. История изменений привязанного фиксации хранится в родительском модуле, но в родительском модуле не отслеживается содержание или история субмодуля.

Настройка Git подмодуль:

  • У вас есть проект - назовем это MyWebApp, что уже есть GitHub репо

  • Вы хотите использовать репозиторий Jquery в проекте

  • Вы хотите вытащить репозиторий jquery в свой проект как подмодуль.

  • Субмодули действительно очень просты в использовании и использовании. Предполагая, что вы уже MyWebApp настроены как репо, от терминала введите следующие команды:

    1. cd MyWebApp

    2. git submodule add git://github.com/jquery/jquery.git externals/jquery Это создаст каталог с именем внешних/JQuery и связать его с GitHub хранилище jquery.Теперь нам просто нужно инициализации подмодуля и клонировать код к нему:

    3. git submodule update --init --recursive Вы должны теперь иметь весь последний код клонированный в субмодуль. Если jQuery repo изменится и вы хотите удалить последний код, просто запустите команду обновления подмодуля.

      Пожалуйста, обратите внимание:

      Я обычно имеют ряд внешних хранилищ в своих проектах, поэтому я всегда группируют репо под внешнеположенности каталога.