Git submodule mess: как использовать git submodules с разработчиками, не знакомыми с git?

Я действительно разочарован использованием функции подмодулей git. Либо я все еще не понимаю, как это сделать, либо это просто не работает так, как я ожидаю. Дана следующая ситуация с проектом:

Project
  | .git
  | projsrc
  | source (submodule)
  | proj.sln

В этом сценарии source указывает на другой репозиторий, содержащий общие исходные данные для всех наших проектов. Под source, а также под projsrc ведется большая разработка. К сожалению, Project указывает на некоторый коммит исходного подмодуля, а не на его фактический HEAD. Это обычное поведение git, насколько я понял.

Я уже выяснил, что

git submodule update

просто получить версию подмодуля, которая была коммитирована вместе с основным Проектом. Однако я бы очень хотел всегда быть в курсе развития подмодулей, но не имею ни малейшего представления о том, как это сделать правильно. Отсюда мой вопрос:

Возможно ли прикрепить Проект к HEAD подмодуля, независимо от того, нарушит ли это компиляцию Project или нет. Я просто не хочу постоянно заходить в каталог субмодуля и делать git pull там. Поскольку я думаю, что могу потерять изменения, сделанные в каталоге подмодуля, потому что это просто прикреплено к коммиту, а не к какой-либо ветке или т.п.

Пожалуйста, примите во внимание следующие ограничения:

  • Разработчики в нашей группе не так хорошо знакомы со всеми VCS вокруг. Мы привыкли использовать действительно огромный репозиторий svn раньше, без каких-либо внешних возможностей репозитория вообще.
  • Мы работаем под Windows
  • Лучше всего подойдет решение click'n'forget, так как большинство участников проекта довольно боязливы в использовании интерфейса командной строки :)
7
задан Cœur 8 October 2017 в 09:57
поделиться