Czy istnieje szybki i łatwy sposób na otwarcie repozytorium git w SourceTree z wiersza poleceń?
Wykonuję dużo pracy z gitem w Terminalu, ale czasami nie ma zamiennika dla dobrego widoku / porównania historii. Chciałbym móc otwierać bez użycia zakładek.
git
command-line
atlassian-sourcetree
loeschg
źródło
źródło
alias sourcetree='open -a SourceTree ./'
. Również użytkownicy komputerów Mac mogą chcieć umieścić alias w.bash_profile
Odpowiedź loeschga może nie działać; niektórzy ludzie otrzymują błąd odnoszący się do ich dzienników systemowych i nie mogą zainstalować narzędzi wiersza poleceń. Jest to otwarta kwestia.
Tutaj można znaleźć obejście. Posługiwać się:
Spowoduje to utworzenie dowiązania symbolicznego do pliku
stree
binarnego i wstawienie go/usr/local/bin
. Upewnij się, że katalog znajduje się na twojej ścieżce:which stree
powinien skutkować/usr/local/bin/stree
. Jeśli tak się nie stanie, dodaj goPATH
ręcznie lub użyjecho export PATH='/usr/local/bin:$PATH' >> ~/.bash_profile
, co zrobi to za Ciebie (zrestartuj powłokę, aby ponownie załadowaćPATH
zmienną).Na stronie wyżej wymienionych zagadnień, w innym obejście, że nie testowałem została wysłana:
alias stree='/Applications/SourceTree.app/Contents/Resources/stree'
. Jeśli go używasz, zgłoś w komentarzach, czy i jak to działa i dlaczego wolisz, aby było to zamiast łącza symbolicznego.W przypadku obu metod ścieżka do
stree
inSourceTree.app
musi oczywiście odpowiadać lokalizacji, w której zainstalowanoSourceTree.app
.Teraz
stree
jest zainstalowany i można uzyskać do niego dostęp z dowolnego katalogu. Najkrótszym sposobem otwarcia SourceTree, gdy katalog roboczy powłoki jest katalogiem głównym repozytorium, jeststree .
.źródło
alias
metodę, ponieważ wydaje mi się, że jest ona mniej „trwała” i bardziej „przenośna” niż tworzenie dowiązania symbolicznego w katalogu, który jest już stosunkowo pełny i wydaje mi się, że jest zarządzany automatycznie - Homebrew lubi tworzyć dowiązania symboliczne ze swojej piwnicy. Ponadto SourceTree wprowadził ostatnio zmiany w swoim interfejsie użytkownika, których nie doceniam, więc zacząłem przechowywać wiele wersji tego oprogramowania, na wszelki wypadek. Używanie aliasów daje mi większą elastyczność co do wersji, na którą chcę kierować reklamy w bashu.Użytkownicy systemu Windows mogą dodać plik wsadowy o nazwie
stree.bat
do folderu w zmiennej środowiskowej PATH. (MamC:\batch
folder, który jest w mojej ŚCIEŻCE, w którym przechowuję wszystkie moje pliki wsadowe narzędzi). Umieść następujące dane w pliku wsadowym:Teraz możesz przejść do dowolnego repozytorium Git lub Mercurial i uruchomić to polecenie, które otworzy repozytorium w SourceTree.
źródło
Kolejne rozwiązanie Windows dla tych, którzy używają Gita w linii poleceń Bash (msys).
Dodaj dwie funkcje do swojego Bash .profile:
# 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 }
Załaduj ponownie swoją muszlę.
Teraz możesz użyć:
I odbije się echem
c:\Temp
.Lub możesz otworzyć SourceTree:
I otworzy to repozytorium w SourceTree domyślnie na panelu Status.
źródło
cygpath
, w której możesz zrobić coś podobnegofunction towinpath { cygpath -w $(cd $1 && pwd); }
. Pozwoli to lepiej obsługiwać takie rzeczy, jak ścieżki UNC.Jeśli masz zainstalowanego cygwin, możesz użyć tego jako swojego
stree.bat
. Ten plik wsadowy używacygpath
do rozwiązywania.
do jego ścieżki bezwzględnej, więc możesz to zrobićstree .
źródło
Windows
Dostosowując się z wielu odpowiedzi tutaj dla Windows, te skrypty pozwolą ci uruchomić SourceTree z wiersza poleceń (testowane na SourceTree 3.0.1.7 / Windows 10).
Skrypty w katalogu PATH
Umieściłem oba te skrypty w folderze, który jest w moim systemie PATH. Nie będziesz musiał modyfikować swojego profilu bash dla tego skryptu.
Git Bash dla Windows
Utwórz plik o nazwie
stree
(touch stree
) w połączonym katalogu PATH i uruchomchmod u+x stree
na tym pliku.Możesz zamienić „log” w ostatniej linii na „status”, jeśli wolisz widok zmian / katalogu roboczego repozytorium w SourceTree.
Wiersz polecenia lub Powershell
Utwórz plik o nazwie
stree.cmd
w połączonym katalogu PATH.Zauważ, że to faktycznie nie otworzy katalogu jako repozytorium.
Zachęcamy do ulepszania skryptów, zwłaszcza dla wiersza polecenia.
źródło