Мой git-репозиторий имеет 2 ветки: master и develop. Мне нужен скрипт, который автоматически объединяет все изменения из develop в master.
Я использовал Jenkins: Плагин Git клонирует репозиторий, а затем запускается этот скрипт (переменная 'version' является параметром задания):
# merge
git checkout -b develop origin/develop
git checkout master
git merge -Xtheirs --squash develop -m "v${version}"
# commit
git commit -m "v${version}"
# tag
git tag v${version} -m "v${version}"
# push
git push origin v${version}
Я попробовал его на тестовом репозитории, и он не работает:
git merge -Xtheirs develop
. CONFLICT (delete/modify): test.txt удален в develop и изменен в HEAD. Версия HEAD test.txt осталась в дереве.
Автоматическое слияние не удалось; исправьте конфликты и затем зафиксируйте результат.
Как мне разрешить этот конфликт автоматически? Я хочу, чтобы скрипт всегда добавлял/изменял/удалял файлы в соответствии с веткой 'develop', поскольку master всё равно никогда не трогается...