Разница между подпроектами и подмодулями в Git? - программирование
Подтвердить что ты не робот

Разница между подпроектами и подмодулями в Git?

В Git существует ли разница между "подмодулем" (созданным и управляемым командой git subodule) и "подпроектом" (буквально только одним репозиторием git, который вы помещаете в другой ), и если да, то что это такое?

Вся документация, которую я смог найти, довольно неоднозначна (а в некоторых случаях и противоречива). Мое подозрение в том, что нет никакой разницы, но я полагаю, что я должен подтвердить это и оставить вопрос для git новичков, чтобы найти.

4b9b3361

Ответ 1

Подпроект является общим термином для одного из трех типов вложенности:

  • Подмодули предоставляют полуфиксированные ссылки из суперпроекта в подпроекты и интегрированы в git. Он лучше всего используется, когда подпроект:
    • разрабатывается кем-то другим, не находится под административным контролем суперпроекта и следует за другим циклом выпуска.
    • содержит код, разделяемый между суперпроектами (особенно когда намерение заключается в распространении исправлений и новых функций обратно в другие суперпроекты).
    • разделяет огромные и/или многие файлы, которые могут повредить производительность ежедневных команд git.
  • Подэлементы заставляет репозиторий подпроектов импортироваться в репозиторий суперпроекта как часть исходного репозитория с полной историей, как правило, в конкретном подкаталоге суперпроекта.
  • Wrappers, которые предоставляют функции управления несколькими репозиториями суперпроекту со связанными подпроектами.

Справочная документация