Как git обрабатывает клонирование другого хранилища в подкаталог? - PullRequest
2 голосов
/ 07 марта 2011

Я только что клонировал репозиторий в подкаталог другого репозитория, и на самом деле, казалось, git справился с ситуацией довольно разумно. Я знаю о подмодулях, но я думал, что они всегда должны быть явно определены, и я не думал, что у git есть такая функциональность. Что случилось?

Вот мой сеанс оболочки:

https://gist.github.com/858131

Ответы [ 2 ]

2 голосов
/ 07 марта 2011

Он обрабатывает его как вложенный репозиторий , а не как подмодуль.
Как вы узнали, чтобы объявить его как подмодуль:

  • подкаталогне должен уже существовать, то есть, если вы уже клонировали свой второй репозиторий, вам необходимо сначала удалить его, прежде чем добавлять его в качестве подмодуля.
  • или вы можете попробовать добавить его непосредственно в файл .gitmodules (не тестировалось)

Это позволит создать специальную запись в ссылках на git indexподмодуль SHA1 , как показано здесь , и подробно описано в вопросе SO " Вложенные git-репозитории без подмодулей? ".

2 голосов
/ 07 марта 2011

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

...