Витягніть підмодулі git після проекту клонування з GitHub


90

У мене є проект, в якому вказані підмодулі. На машині розробника все працює добре. Я записав .gitmodulesфайл і продовжив виробництво. Однак це не тягне підмодулі.

Якщо я заходжу в каталоги підмодулів і телефоную git pull, нічого не відбувається.

Який правильний спосіб використати ці підмодулі в новому проекті?

Відповіді:


142

З кореня репо просто запустіть:

git submodule update --init

8
Я вважаю, що це насправді оновить ваші залежності. Думаю, у своєму коментарі С. Рассел мав правильну команду:git pull --recurse-submodules
Спенсер,

37

Якщо вам потрібно витягнути речі для підмодулів у ваші сховища підмодулів, використовуйте

git pull --recurse-submodules

Але це не перевірить належні коміти (ті, на які вказує ваш головний репозиторій) у підмодулях

Щоб перевірити правильні коміти у ваших підмодулях, слід оновити їх після витягування за допомогою

git submodule update --recursive

1
git submodule update --recursiveце те, що мені потрібно було після першого git cloneвходу, але забувши --recursiveпро це на першому шляху. Дякую!
mbb

8
Здається, це не працює для мене. Підмодулі залишаються порожніми.
CodeMonkey

@CodeMonkey те саме для мене.
linkerx

6
може бути запізно на вечірку, але для тих, хто опинився тут: git submodule update --init --recursiveвиріши моє питання
Іглеськ,

21

Якщо є вкладені підмодулі, вам потрібно буде використовувати:

git submodule update --init --recursive
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.