Git pull всегда создает коммит слияния?

Есть лиgit pull всегда создавать коммит слияния?

Если у меня есть ветвь функции, которую я обновляюgit pull -r . master, а затем я переключаюсь на мастера и делаюgit pull . feature-branch Я несчитать Я получаю коммит слияния.

 MicroVirus09 июн. 2016 г., 13:07
git pull может перемотать вперед.
 Ben09 июн. 2016 г., 13:07
Хорошо, так что, когда он ускоряется, это не приводит к коммиту слияния? Поэтому мне нужно использовать флаг --no-ff для принудительного принятия коммита слияния, если он мне нужен?
 MicroVirus09 июн. 2016 г., 13:13
С использованием--rebase флаг немного меняет вещи (я не уверен в том, как он работает), но он все равно не должен создавать коммит слияния по умолчанию, я думаю. Не верьте мне на слово, хотя.
 emlai09 июн. 2016 г., 13:22
Я хотел бы увидеть ответ, в котором сравниваются разные способыgit pull (дефолт,-no-ff, --rebase, так далее.).
 Flows10 июн. 2016 г., 08:56
@tuple_cat: я добавил опцию --rebase в свой ответ
 MicroVirus09 июн. 2016 г., 13:08
Да, описание-ff (перемотка вперед) флаг говорит:«Когда слияние разрешается как ускоренная перемотка вперед, обновляйте только указатель ветви, не создавая фиксацию слияния. Это поведение по умолчанию».

Ответы на вопрос(1)

Решение Вопроса

хороший пример о git merge и fast-forward на связанном веб-сайте.

@MicroVirus дал хорошее объяснение. Ниже, серая точка - это ГОЛОВКА вашей локальной ГОЛОВКИ перед извлечением (выборка + слияние). Вы можете увидеть разницу между двумя способами слияния.

git fast forward http://ariya.ofilabs.com/wp-content/uploads/2013/09/merging.png

Еще один способ обновить репоgit pull это использовать--rebase вариант. Эта опция применяет ваши коммиты в верхней части ветки, переписывая историю. Ты можешь читатьподробности там, Люди делятся между использованиемgit pull или жеgit pull --rebase, На мой взгляд, для исправления ошибки следует использовать rebase, вместо классической тяги следует использовать, когда новая функция объединяется с master.

Пример Git ReBase

Прочитайте ссылку ниже, чтобы иметь представление о различных точках зрения:

git pull VS git fetch + git rebase

Разница между git pull и git pull --rebase

Ваш ответ на вопрос