A while back я попросил наших разработчиков использовать rebase вместо merge перед нажатием. Устранение тривиальных слияний упрощает отслеживание графика фиксации (например, gitk, git log).
Иногда люди все же случайно совершают тривиальные слияния, а затем нажимают. Кто-нибудь имеет удобство или имеет советы по написанию крюка на стороне сервера, который блокирует тривиальные слияния?
Под "тривиальным слиянием" подразумевается слияние без конфликтов. Вот пример и здесь лучшее объяснение тривиального слияния в git.
Обновление Wed Nov 10 01:26:41 UTC 2010: отличные комментарии, все! Спасибо.
- Рассмотрите следующее: все, что я действительно прошу, это сделать:
- Если
git pull --ff-only
не работает, выполнитеgit pull --rebase
вместоgit pull
- Если
- git.git имеет только один или два коммиттера, не так ли? Теоретически, легко следовать графику фиксации, но для меня это выглядит довольно грязно.
Обновление Чт 11 ноя 23:49:35 UTC 2010:
- вот суть с некоторой незавершенной работой
- Другая идея состоит в том, чтобы предотвратить тривиальные слияния на стороне клиента, с git push " wrapper
Обновление Wed Dec 15 18:34:52 UTC 2010:
- adymitruk близок! Только один случай все еще не разрешен: нетривиальные слияния должны по-прежнему работать.
- Доступен довольно полный тестовый набор, проверьте его.
- Я попросил о помощи в списке рассылки git.