La política de la empresa es utilizar --no-ff
para las confirmaciones de fusión. Personalmente, me gusta ajustar los mensajes de registro de combinación, por lo que uso --no-commit
. Además, me gusta compilar y probar antes de dejar ir la confirmación.
¿Cómo hago --no-ff
y --no-commit
el predeterminado para mí para todas las ramas?
(y he aprendido en los años desde que pregunté esto, casi siempre estoy contento con la confirmación, por lo que es más simple permitir que se confirme de forma predeterminada y siempre que modifique o arregle las cosas antes de hacer un empujón, las cosas son todo bien...)
Respuestas:
Pon esto en $ HOME / .gitconfig:
Puedes usar git-config para hacer esto:
fuente
branch.master.mergeoptions="--no-ff"
omerge.ff="no"
(ver la respuesta a continuación)Para hacer
--no-ff --no-commit
el comportamiento de fusión predeterminado, configure las opciones parano
usar:Sin embargo, el problema con esto es que
git pull
=git fetch
+git merge
. Por lo tanto, cada vez que extraiga del servidor remoto, estaría creando una fea confirmación de fusión cuando se justificaría un avance rápido simple. Para resolver esto, establezcapull.ff
enyes
:fuente
merge.ff
lugar, entonces no hace esto, solo afecta a las combinaciones explícitas, mientras que las extracciones aún hacen el avance rápido deseado.merge.ff = no
,git pull
crea confirmaciones de fusión.git pull --rebase
( git-scm.com/docs/git-pull ) o configurarbranch.autosetuprebase
( git-scm.com/docs/git-config.html )pull.ff = yes
A partir de la versión 1.7.6 de git, debes usar
para "forzar" el uso
--no-ff
en cada combinación.El comportamiento predeterminado es
Y con
rechazará las fusiones que no sean de avance rápido
fuente
De acuerdo con el manual , debe usar
para establecer la opción sin avance rápido por defecto para todas las ramas con la utilidad git-config.
fuente