Différences

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

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
git [2014/06/22 10:58]
Yoh
git [2019/11/20 16:12] (Version actuelle)
Yoh
Ligne 3: Ligne 3:
 ==== Mes réglages ==== ==== Mes réglages ====
  
-Pour avoir un log plus détaillé que la simple commande ''​ git log '',​ créez un alias dans le fichier //​~/​.gitconfig//​ pour avoir un rendu avec un graphique. [[https://​stackoverflow.com/​questions/​1057564/​pretty-git-branch-graphs|source]]+=== 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>​ <​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] [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(bold yellow)%d%C(reset)'​ --all+ #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>​ </​code>​
 +