2016-02-09 2 views
9

Un workflow git typique pour moi consiste à cloner un dépôt distant et à utiliser git pull pour le maintenir à jour. Je ne veux pas que les commits fusionnent quand je tire, donc j'utilise l'option --ff-only.Comment configurer "git pull --ff-only" et "git merge -no-ff"

Je crée également des branches locales pour les longs métrages. Je veux préserver l'historique des branches, donc quand je fusionne la branche locale vers mon clone local, j'utilise l'option --no-ff.

Comment configurer git pour utiliser ces options par défaut? Actuellement, mon .gitconfig ressemble à ceci:

[merge] 
    ff = false 
[pull] 
    ff = only 

Cependant, git pull (ce qui est vraiment git chercher et git merge) semble être ramasser l'option de fusion et créant ainsi fusionner.

Répondre

8

Cela ne devrait pas être le cas, selon le the git-config man pagepull.ff:

(...) Lorsqu'il est réglé seulement, que ces fusions avance rapide sont autorisés (équivalent à donner au --ff option -only à partir de la ligne de commande). Ce paramètre remplace le fichier merge.ff lorsque vous tirez.

La configuration pull.ff a été introduite dans 2.x Git, donc il ne fonctionnera pas comme prévu 1.x Git - il sera probablement ramasser la configuration merge.ff et l'utiliser lorsque vous faites un pull.

+1

Ha! Je savais que cela a fonctionné pour moi à un moment donné. J'ai récemment réinstallé Linux Mint et complètement oublié de vérifier la version de git. Le dépôt 'officiel' est toujours sur 1.9! –

+0

Pour une raison quelconque, pull.ff n'est pas répertorié dans l'achèvement de l'onglet, mais il fonctionne tout de même. – sashoalm