2013-02-12 2 views
5

У меня есть мастер репо и я с file1.txt и file2.txtПочему я не должен совершить после мерзавца слияния

git checkout -b fix1 

Я тогда изменить file1.txt

и я

git commit -a 

тогда я делаю

git checkout master 

Затем я делаю

git checkout -b fix2 

Я тогда изменить file2.txt

и я делаю

git commit -a 

затем git checkout master затем

git merge fix1 
git marge fix2 

, но если я делаю

commit -a 

я

 
# On branch master 
nothing to commit (working directory clean) 

ответ

8

git merge автоматически фиксируется. Если вы не хотите, чтобы совершить добавить --no-commit аргумент:

--commit, --no-commit 
     Perform the merge and commit the result. This option can be used to override --no-commit. 

     With --no-commit perform the merge but pretend the merge failed and do not autocommit, to give the user 
     a chance to inspect and further tweak the merge result before committing. 
3

Если слияние удается без конфликта, мерзавец будет автоматически совершить его (вы должны быть в состоянии проверить, просто проверяя git log).

The documentation notes (курсив добавлен):

... «мерзавец слияние тема» повторят изменения, внесенные на тему ветви, так как он не отклонился от хозяина (т.е., E) до его текущего фиксации (C) на вершине мастера, и записать результат в новом совершить наряду с именами двух родителей совершает и регистрационное сообщение от пользователя, описывающее изменения

Если вы хотите, чтобы избежать этого, используйте --no-commit флаг:

git merge --no-commit fix1 
1

присоединяемых файлов, которые не имеют конфликтов уже объединены. Вы можете напрямую нажимать свои объединенные файлы.

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