Ceci est une ancienne révision du document !
Git
Mes réglages
Git diff-so-fancy
Pour avoir des diffs plus sympa installer diff-so-fancy.
Ensuite lire la doc pour le régler ou copier les réglages plus bas dans la page (.gitconfig)
Git prompt
Pour avoir un prompt plus sympa avec des icônes qui indiques le statut de la copie de travail, utiliser bash-git-prompt.
Une fois fait, si vous voulez afficher la légende lié au symboles, tapez dans le shell :
git_prompt_help
Attention, il faut être dans un répertoire GIT
Git status
Pour lister le contenu d'un dossier untracked, modifier la variable de configuration suivante :
git config --global status.showUntrackedFiles all
L'équivalent sans cette configuration et la commande git status -u.
Modification remote
Pour lister les URL
$ git remote -v origin git://github.com/xxx/xxx.git (fetch) origin git://github.com/xxx/xxx.git (push)
Pour changer l'URL du remote
$ git remote set-url origin [new url]
Pour changer le nom du remote
$ git remote rename [old] [new]
Diverses commandes
Supprimer une branche sur le server distant
git push --delete repo branch
Avoir une information sur la création d'une branche
git reflog --date=local | grep [branch]
Conflit
Lors d'un merge, si l'on veut afficher l'ancêtre commun de la partie en conflit, utiliser la commande suivante et afficher le fichier
git checkout --conflict=diff3 [nom du fichier]
Merge
Lors d'un merge, si on veut ignorer les retours à la lignes, espaces et indentations des fichiers, utiliser la commande suivante :
git merge -Xignore-all-space [branch]
Faire le ménage dans les branches
Un alias pour supprimer en locale les branches mergées.
git_delete_branches_merged='git branch --merged origin/integ | grep -v '\''integ$'\'' | xargs -r git branch -d'
.gitconfig
[user] name = email = [color] # Enable colors in color-supporting terminals ui = true [core] # Don't paginate output by default pager = test -x \"$(which diff-so-fancy)\" && diff-so-fancy | less --tabs=4 -RFX || less -RFX editor = vim [color "branch"] # Blue on black is hard to read in git branch -vv: use cyan instead upstream = cyan [alias] #lg = log --graph --abbrev-commit --decorate --date=relative --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(auto)%d%C(reset)' lolc = log --graph --pretty='%Cred%h%Creset %Cgreen(%cr) %C(bold blue)<%an>%Creset -%C(auto)%d%Creset %s%n%b' diffc = diff --color-words=. [status] showUntrackedFiles = all [color "diff-highlight"] oldNormal = red bold oldHighlight = red bold 52 newNormal = green bold newHighlight = green bold 22 [color "diff"] meta = yellow frag = magenta bold commit = yellow bold old = red bold new = green bold whitespace = red reverse [diff-so-fancy] changeHunkIndicators = true markEmptyLines = true
