542 Stimmen

Git-Baum kann im Terminal nicht angezeigt werden

Der alte Artikel von Killswitchcollective.com, 30. Juni 2009 hat die folgenden Ein- und Ausgänge

git co master
git merge [your_branch]
git push

upstream    A-B-C-D-E            A-B-C-D-E-F-G
                 \        ---->               \
your branch       C-D-E                        G

Mich interessiert, wie Sie die baumartige Ansicht der Commits in Ihrem Terminal erhalten, ohne Gitk oder Gitx in OS/X zu verwenden.

Wie kann man die baumartige Ansicht von Commits im Terminal erhalten?

953voto

VonC Punkte 1117238

Wie kann man die baumartige Ansicht von Commits im Terminal erhalten?

git log --graph --oneline --all

ist ein guter Anfang.

Sie könnten seltsame Briefe erhalten. Es handelt sich um ASCII-Codes für Farben und Strukturen. Um dieses Problem zu lösen, fügen Sie Folgendes zu Ihrem .bashrc :

export LESS="-R"

so dass Sie den ASCII-Filter von Tig nicht verwenden müssen, indem Sie

git log --graph --pretty=oneline --abbrev-commit | tig   // Masi needed this 

Der Artikel textbasierte Grafik von Git-ready enthält weitere Optionen:

git log --graph --pretty=oneline --abbrev-commit

git log graph

Was den von Ihnen erwähnten Artikel betrifft, so würde ich mich für Pods Antwort : Handgemachte Ad-hoc-Ausgabe.


Jakub Narebski Erwähnungen in den Kommentaren tig eine ncurses-basierte Textmodus-Schnittstelle für Git. Siehe ihre Veröffentlichungen .
Sie fügte hinzu a --graph Option aus dem Jahr 2007.

353voto

Marouane Gazanayi Punkte 4903

Eine Lösung ist die Erstellung eines Alias in Ihrer .gitconfig und rufen Sie es einfach auf:

[alias]
    tree = log --graph --decorate --pretty=oneline --abbrev-commit

Und wenn Sie das nächste Mal anrufen, werden Sie es benutzen:

git tree

Um sie in ~/.gitconfig einzufügen, ohne sie bearbeiten zu müssen, können Sie dies tun:

git config --global alias.tree "log --graph --decorate --pretty=oneline --abbrev-commit"  

(Wenn Sie das --global nicht verwenden, wird es in die .git/config Ihres aktuellen Repo eingefügt).

141voto

Sebastian Patten Punkte 6740
git log --oneline --decorate --all --graph

Ein visueller Baum mit den Namen der Zweige.

Verwenden Sie dies, um ihn als Alias hinzuzufügen

git config --global alias.tree "log --oneline --decorate --all --graph"

Sie rufen es mit

git tree

Git Tree

70voto

Mohsen Punkte 61518

tig

Wenn Sie eine interaktiv Baum, können Sie mit tig . Es kann installiert werden durch brew unter OSX und apt-get unter Linux.

brew install tig
tig

Das ist das Ergebnis:

enter image description here

7voto

Saxophonist Punkte 667

Ich würde jedem empfehlen, den vollständigen Befehl aufzuschreiben

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

anstatt einen Alias zu erstellen.

Es ist gut, sich die Befehle einzuprägen, damit man sie auswendig kann d.h. nicht auf Aliase angewiesen sind, wenn Sie den Rechner wechseln.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X