2012-03-26 2 views
5

Я использую эту команду:Как сделать автоматическую фиксацию после успешного слияния?

git merge --commit -m="Automatic commit" --progress my_branch/master 
if [ $? != 0 ]; then 
    echo "Merge fail" 
fi 

Слияние было успешным и не производят каких-либо конфликтов.
Вывод команды мерзавец является:

Automatic merge went well; stopped before committing as requested 
fatal: You have not concluded your merge (MERGE_HEAD exists). 
Please, commit your changes before you can merge. 

Почему это шоу: остановился перед тем, как спрошено? Я хочу, чтобы он зафиксировал, если не существует конфликта.

Любая идея сделать это автоматически?

+0

Я не могу воспроизвести это. Вы уверены, что на самом деле вы не передаете '-no-commit'? – Cascabel

+0

(На всякий случай, чтобы уточнить: '--no-commit' вызывает * точно * это поведение, а' --commit' является точной * противоположной * - и также является значением по умолчанию.) – Cascabel

+0

'--commit' does not решить проблему (git v2.11.0) – oklas

ответ

0
stopped before committing as requested 

Это сообщение должно происходить только при использовании опции --no-commit.
Как показано в «Mastering Git subtrees», a git merge --squash также выдаст такое же сообщение.

Так что, если (возможно) у вас уже есть слияние, вы не должны видеть это сообщение.

Смежные вопросы