Наш процесс для git является периодическим слиянием вплоть до нашей основной ветки, так что изменения могут быть объединены обратно в наши последние ветки функций. Поскольку последние раунды сливаются из одной ветки в другую, мы сталкиваемся с проблемой, в которой решение не ясно.
У нас есть репозиторий, в котором есть 19 подмодулей. Когда мы делаем слияние всех подмодулей, мы видим, что мы считаем ожидаемой продукцией, сообщающей нам изменяемые файлы, конфликты и т.д. Затем, когда мы доходим до слияния "корневого" репозитория, все идет на юг, и мы видим некоторые следующего выхода (отредактировано, чтобы указать только на проблемы).
warning: Failed to merge submodule projects/foo1 (commits don't follow merge-base)
warning: Failed to merge submodule projects/foo2 (commits don't follow merge-base)
warning: Failed to merge submodule projects/foo3 (not fast-forward)
Found a possible merge resolution for the submodule:
931a61165f3b2079523a122477fa5f44c123406d: Comment of last merge
If this is correct simply add it to the index for example by using:
git update-index --cacheinfo 160000 931a61165f3b2079523a122477fa5f44c123406d "projects/foo3"
which will accept this suggestion.
Теперь мы можем запустить предлагаемую команду git update-index
. Это сделает git счастливым для этого одного подмодуля, но нам никогда не приходилось запускать это раньше. Проблема действительно плоха, если смотреть на подмодули foo1 и foo2, в которых не отображается помощь.