21 votes

Ajouter en tête de branche git actuelle dans le terminal

Comment puis-je configurer le terminal pour afficher la branche git actuelle ?

Je préférerais voir la deuxième ligne plutôt que la première :

andy@bob:~/my_projects/project_x$ 
(master)~/my_projects/project_x$

Je ne veux plus avoir à exécuter git status pour voir sur quelle branche je me trouve actuellement !

34voto

Torlack Points 2910

Vous pouvez ajouter le code suivant à votre fichier .bashrc:

parse_git_branch() {
  git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}
PS1="${debian_chroot:+($debian_chroot)}\u@\h:\w\$(parse_git_branch) $ "

Vous pouvez déplacer ces parties de composants pour les configurer selon vos préférences, par exemple pour préfixer $(parse_git_branch) et ne pas afficher la partie utilisateur@ordinateur que j'ai utilisée:

PS1="\$(parse_git_branch)${debian_chroot:+($debian_chroot)}\w$ "

Ce qui affiche:

(master)~/mes_projets/projet_x$ 

Voir aussi: Que fait cette variable PS1 dans le fichier .bash_profile?

-1voto

Vipin Verma Points 5196

Ajoutez cette ligne à .bashrc:

export PS1='\u@\h \W$(__git_ps1 " [ - %s - ]") \$ '

-1voto

Russell Strauss Points 177

Vous pouvez également ajouter la ligne suivante à votre fichier .bashrc :

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\`__git_ps1`\$ '

-2voto

Ankit Jain Points 97

Cela ajoutera de la couleur au nom de la branche dans le terminal

git_branch() {
   git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[1;31m\]'"\$(git_branch)\[\033[00m\]$ "

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X