Подтвердить что ты не робот

Почему git фиксирует после слияния по умолчанию?

Мне интересно об этом поведении и, возможно, о его просто потому, что я пришел от использования SVN и базара в основном. (Я изучаю git для взаимодействия с отличным github.)

Мне кажется, что противник интуитивно понятен мне и, как если бы это было лучше для

git merge [branch] --no-commit

чтобы по умолчанию поощрять людей, чтобы убедиться, что слияние прошло так, как они хотели, до совершения.

4b9b3361

Ответ 1

Цель, заданная Линусом Торвальдсом при создании Git, заключалась в том, чтобы сделать все слияния, которые могут быть автоматически решены... FAST. Смотрите его 2007 Google Tech Talk: Линус Торвальдс на Git (стенограмма)
То есть сотни слияний менее чем за несколько секунд.

Значит, "--no-commit" по умолчанию сильно превзойдет эту цель.

С --no-commit выполните слияние, но притворитесь, что слияние не выполнено, и не выполняйте аутоавтоматизацию, чтобы дать пользователю возможность проверить и доработать результат слияния перед фиксацией.

Выдержка из Обсуждение (видео):

Единственное, что имеет значение, - это то, как быстро вы можете объединить.
В git вы можете объединиться... Я объединять 22 000 файлов несколько раз в день, и я получаю недовольство, если слияние занимает более 5 секунд, и все эти 5 секунд просто загружают все различия, а не различия но его дельтами между двумя деревьями, само слияние занимает менее половины секунды.
И мне не нужно об этом думать.
[...] Что такое производительность, которая на самом деле влияет на то, как вы работаете.