web-dev-qa-db-fra.com

Affichage de la version complète de l'arborescence dans git

J'utilise la version en ligne de commande de Git et de Gitk. Je souhaite voir l'arborescence complète des versions, pas seulement la partie accessible à partir de la version actuellement extraite. C'est possible?

105
petersohn

Vous pouvez essayer ce qui suit:

gitk --all

Vous pouvez dire à gitk ce qu’il faut afficher en utilisant quelque chose qui git rev-list comprend , donc si vous voulez juste quelques branches, vous pouvez faire:

gitk master Origin/master Origin/experiment

... ou des choses plus exotiques comme:

gitk --simplify-by-decoration --all
71
Mark Longair

si vous n'avez pas d'interface graphique disponible, vous pouvez également imprimer le graphique de validation sur la ligne de commande:

git log --oneline --graph --decorate --all

si cette commande se plaint d'une option non valide --oneline, utilisez:

git log --pretty=oneline --graph --decorate --all
259
knittl
  1. Lorsque je suis dans mon lieu de travail avec un terminal uniquement, j'utilise:

    git log --oneline --graph --color --all --decorate

    enter image description here

  2. Lorsque le système d'exploitation prend en charge l'interface graphique, j'utilise:

    gitk --all

    enter image description here

  3. Quand je suis dans mon PC Windows à la maison, j'utilise mon propre GitVersionTree

    enter image description here

110
checksum

Il y a un très bonne réponse à la même question.
Ajout des lignes suivantes à "~/.gitconfig":

[alias]
lg1 = 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
lg2 = log --graph --abbrev-commit --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold cyan)%aD%C(reset) %C(bold green)(%ar)%C(reset)%C(bold yellow)%d%C(reset)%n''          %C(white)%s%C(reset) %C(dim white)- %an%C(reset)' --all
lg = !"git lg1"
19
Daniil Shevelev

La réputation ne suffit pas pour commenter la réponse de knittl, alors:

Si vous n'avez pas besoin d'un nom de branche ou de tag:
git log --oneline --graph --all --no-decorate

Si vous n’avez même pas besoin de couleur (pour éviter la séquence de touches lors du transfert):
alias tree = log --oneline --graph --all --no-decorate --no-color

Seule la dernière option fonctionne, il est donc possible de remplacer votre alias lors de l'exécution:
git tree --decorate

0
clarkttfu