Gibt es eine schnelle und einfache Möglichkeit, ein Git-Repository in SourceTree über die Befehlszeile zu öffnen?
Ich mache viel Git-Arbeit vom Terminal aus, aber manchmal gibt es keinen Ersatz für eine gute Verlaufsansicht / Diff. Würde gerne ohne Lesezeichen öffnen können.
git
command-line
atlassian-sourcetree
loeschg
quelle
quelle
alias sourcetree='open -a SourceTree ./'
. Auch Mac-Benutzer möchten möglicherweise den Alias in.bash_profile
Die Antwort von loeschg funktioniert möglicherweise nicht. Einige Benutzer erhalten eine Fehlermeldung in Bezug auf ihre Systemprotokolle und können die Befehlszeilentools nicht installieren. Hierzu gibt es ein offenes Thema.
Eine Problemumgehung finden Sie hier. Verwenden:
Dadurch wird eine symbolische Verknüpfung zur
stree
Binärdatei erstellt und eingefügt/usr/local/bin
. Stellen Sie sicher , dass Verzeichnis auf Ihrem Weg ist:which stree
sollte zur Folge/usr/local/bin/stree
. Wenn dies nicht der Fall ist, fügen Sie esPATH
manuell zu Ihrem hinzu oder verwenden Sie esecho export PATH='/usr/local/bin:$PATH' >> ~/.bash_profile
, was dies für Sie erledigt (starten Sie Ihre Shell neu, um diePATH
Variable neu zu laden ).Auf der Seite des oben genannten Problems wurde eine weitere Problemumgehung veröffentlicht, die ich nicht getestet habe :
alias stree='/Applications/SourceTree.app/Contents/Resources/stree'
. Wenn Sie es verwenden, geben Sie in den Kommentaren an, ob und wie es funktioniert und warum Sie es dem symbolischen Link vorziehen.Bei beiden Methoden muss der Pfad zu
stree
inSourceTree.app
natürlich mit dem Speicherort übereinstimmen, an dem Sie installiert habenSourceTree.app
.Jetzt
stree
ist installiert und kann von jedem Verzeichnis aus aufgerufen werden. Der kürzeste Weg, um SourceTree zu öffnen, wenn das Arbeitsverzeichnis Ihrer Shell das Stammverzeichnis eines Repositorys ist, iststree .
.quelle
alias
Methode, weil sie sich weniger "permanent" und "portabler" anfühlt als das Erstellen eines symbolischen Links in einem Verzeichnis, das bereits relativ voll ist und sich für mich automatisch verwaltet anfühlt. Homebrew verknüpft dort gerne Inhalte aus seinem Keller. Außerdem hat SourceTree kürzlich Änderungen an der Benutzeroberfläche vorgenommen, die ich nicht schätze. Daher habe ich begonnen, für alle Fälle mehrere Versionen davon beizubehalten. Die Verwendung von Alias (s) gibt mir mehr Flexibilität hinsichtlich der Version, auf die ich in Bash abzielen möchte.Unter Windows können Sie eine Batchdatei mit dem Namen
stree.bat
eines Ordners in Ihrer PATH-Umgebungsvariablen hinzufügen . (Ich habe einenC:\batch
Ordner in meinem PFAD, in dem ich alle meine Dienstprogramm-Batchdateien speichere.) Fügen Sie Folgendes in Ihre Batchdatei ein:Jetzt können Sie zu jedem Git- oder Mercurial-Repository gehen und diesen Befehl ausführen, der das Repository in SourceTree öffnet.
quelle
Eine weitere Windows-Lösung für diejenigen, die Git in der Bash-Befehlszeile (msys) verwenden.
Fügen Sie Ihrem Bash-Profil zwei Funktionen hinzu:
# Courtesy: http://stackoverflow.com/questions/12015348/msys-path-conversion-or-cygpath-for-msys function towinpath { { cd $1 && pwd -W; } | sed 's|/|\\|g' } function stree { if [ -z $1 ]; then stree_path=$(towinpath pwd) else stree_path=$(towinpath $1) fi echo "Starting SourceTree in $stree_path" /c/Program\ Files\ \(x86\)/Atlassian/SourceTree/SourceTree.exe -f $stree_path status }
Laden Sie Ihre Shell neu.
Jetzt können Sie verwenden:
Und es wird widerhallen
c:\Temp
.Oder Sie können SourceTree öffnen:
Dieses Repository wird in SourceTree geöffnet, standardmäßig im Statusfenster.
quelle
cygpath
mit der Sie etwas Ähnliches tun könnenfunction towinpath { cygpath -w $(cd $1 && pwd); }
. Dadurch werden Dinge wie UNC-Pfade robuster behandelt.Wenn Sie Cygwin installiert haben, können Sie dies als Ihr verwenden
stree.bat
. Diese Batchdatei wird verwendetcygpath
, um.
in ihren absoluten Pfad aufzulösen , damit Sie dies tun könnenstree .
quelle
Windows
Mit diesen Skripten können Sie SourceTree über die Befehlszeile ausführen (getestet unter SourceTree 3.0.1.7 / Windows 10).
Skripte in einem PATH-Verzeichnis
Ich habe beide Skripte in einem Ordner abgelegt, der sich in meinem Systempfad befindet. Sie müssen Ihr Bash-Profil für dieses Skript nicht ändern.
Git Bash für Windows
Erstellen Sie eine Datei mit dem Namen
stree
(touch stree
) in Ihrem mit PATH verknüpften Verzeichnis und führen Siechmod u+x stree
diese Datei aus.Sie können "log" in der letzten Zeile durch "status" ersetzen, wenn Sie die Ansicht "Änderungen / Arbeitsverzeichnis" Ihres Repositorys in SourceTree bevorzugen.
Eingabeaufforderung oder Powershell
Erstellen Sie eine Datei mit dem Namen "
stree.cmd
PATH".Beachten Sie, dass das Verzeichnis dadurch nicht als Repository geöffnet wird.
Bitte zögern Sie nicht, die Skripte zu verbessern, insbesondere das für die Eingabeaufforderung.
quelle