62 votes

`git commit -v` par défaut

Comment puis-je configurer git commit pour qu'il agisse comme git commit -v (montrant le diff complet en cours de validation) par défaut?

L'utilisation d'un alias n'est pas tout à fait satisfaisante, car cela n'affecte pas la modification du message de validation pendant les opérations susceptibles de valider indirectement, telles que git rebase .

30voto

asmeurer Points 13185

Aussi loin que je peux dire, vous ne pouvez pas remplacer une déjà existante commande git avec un alias (sinon, il n'y aurait pas moyen de faire la commande d'origine, et un tas de choses allait se briser).

Alors je vous recommande de faire quelque chose comme git config --global "alias.ci" "commit -v". Cela va ajouter une ligne à votre ~/.gitconfig le fichier et de faire en sorte que l' git ci t git commit -v. Ensuite, vous devez juste prendre l'habitude de taper git ci au lieu de git commit (sauf si vous décidez que vous ne voulez pas l' -v).

9voto

kwbeam Points 588

Eh bien, j'utilise des alias:

 alias gc='git commit -v'
 

Je crois qu'il y a plein de bons alias comme ceux-ci que j'ai obtenus avec les screencasts git de PeepCode.

6voto

boshvark Points 57

Je sais que c'est une vieille question, mais il m'est arrivé de tomber sur elle et avoir une réponse. J'ai mis la fonction suivante dans .bash_profile:

#!/bin/bash                                                                            

git()                                                                                  
{                                                                                      
    case "$1" in                                                                       
        ci|commit)
        gitargs=""
        for i in $@; do
            if [ "$1" != "$i" ]; then                                                  
                gitargs="$gitargs $i"
            fi  
        done
        command git commit -v $gitargs
        ;;  
    *)  
        command git "$@"
        ;;                                                                             
    esac                                                                               
}

Cela s'avère git dans un bash fonction qui transforme git commit en git commit -v et laisse le reste des arguments souvent seul. Cependant, il rompt git commit arguments qui ont des espaces, et il ne laissera pas de vous engager un fichier nommé ci ou commit.

1voto

alxndr Points 729

Contournement idiot: :!git log -1 -u

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X