Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
git [2014/06/19 14:22]
Yoh créée
git [2019/11/20 16:12] (Version actuelle)
Yoh
Ligne 1: Ligne 1:
-cdevfsv+===== Git ===== 
 + 
 +==== Mes réglages ==== 
 + 
 +=== Git diff-so-fancy === 
 + 
 +Pour avoir des diffs plus sympa installer [[https://​github.com/​so-fancy/​diff-so-fancy|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 [[https://​github.com/​magicmonty/​bash-git-prompt|bash-git-prompt]]. 
 + 
 +Une fois fait, si vous voulez afficher la légende lié au symboles, tapez dans le shell : 
 +<​code>​ 
 +git_prompt_help 
 +</​code>​ 
 + 
 +//​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 :  
 +<​code>​ 
 +git config --global status.showUntrackedFiles all 
 +</​code>​ 
 +//​L'​équivalent sans cette configuration et la commande// ''​git status -u''​. 
 + 
 +==== Modification remote ==== 
 + 
 +Pour lister les URL  
 +<​code>​ 
 +$ git remote -v 
 +origin ​ git://​github.com/​xxx/​xxx.git (fetch) 
 +origin ​ git://​github.com/​xxx/​xxx.git (push) 
 +</​code>​ 
 + 
 +Pour changer l'URL du remote 
 +<​code>​ 
 +$ git remote set-url origin [new url] 
 +</​code>​ 
 + 
 +Pour changer le nom du remote 
 +<​code>​ 
 +$ git remote rename [old] [new] 
 +</​code>​ 
 +==== Diverses commandes ==== 
 +=== Supprimer une branche sur le server distant === 
 +<​code>​ 
 +git push --delete repo branch 
 +</​code>​ 
 + 
 +=== Avoir une information sur la création d'une branche === 
 +<​code>​ 
 +git reflog --date=local | grep [branch] 
 +</​code>​ 
 + 
 +=== 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 
 +<​code>​ 
 +git checkout --conflict=diff3 [nom du fichier] 
 +</​code>​ 
 + 
 +=== Merge === 
 +Lors d'un merge, si on veut ignorer les retours à la lignes, espaces et indentations des fichiers, utiliser la commande suivante : 
 +<​code>​ 
 +git merge -Xignore-all-space [branch] 
 +</​code>​ 
 + 
 +=== Faire le ménage dans les branches === 
 +Un alias pour supprimer en locale les branches mergées. 
 +<​code>​ 
 +git_delete_branches_merged='​git branch --merged | egrep -v "​(^\*|master|dev)"​ | xargs git branch -d' 
 +// ou 
 +// git_delete_branches_merged='​git branch --merged origin/​integ | grep -v '​\''​integ$'​\''​ | xargs -r git branch -d' 
 +</​code>​ 
 + 
 +=== .gitconfig === 
 + 
 +<​code>​ 
 +[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 
 +[merge] 
 +        conflictstyle = diff3 
 +[rerere] 
 + enabled = true 
 + autoupdate = true 
 +</​code>​