Posso fare in modo che l'inoltro veloce sia disattivato per impostazione predefinita in git?


Answers

Sembra che ci sia ancora una domanda in sospeso nel thread: come farlo globalmente (cioè per tutti i rami)? Per i record, possiamo usare il seguente:

git config --add merge.ff false

... per renderlo applicabile a tutti i rami nel repository attuale. Per farlo applicare a tutti i rami in tutti i repository dove qualcuno non l' ha eseguito senza l'opzione --global (impostazioni locali sovrascrivono globali) esegui questo:

git config --global --add merge.ff false

Dalla documentation (cerca merge.ff):

merge.ff
Per impostazione predefinita, git non crea un commit unione extra quando unisce un commit discendente del commit corrente. Invece, la punta del ramo attuale viene inoltrata rapidamente. Se impostato su false, questa variabile indica a git di creare un commit di unione aggiuntivo in tal caso (equivalente a fornire l'opzione --no-ff dalla riga di comando). Se impostato su only, sono consentite --ff-only le --ff-only avanzamento rapido (equivalente a fornire l'opzione --ff-only dalla riga di comando).

Question

Non riesco mai davvero a pensare a un momento in cui git merge piuttosto che git rebase e non voglio che venga mostrato un commit. C'è un modo per configurare git per avere l'inoltro veloce disattivato per impostazione predefinita? Il fatto che esista un'opzione --ff sembrerebbe implicare che esiste un modo, ma non riesco a trovarlo nella documentazione.