loe*_*chg 68 git command-line atlassian-sourcetree
有没有一种从命令行在SourceTree中打开git存储库的快捷方法?
我从终端做了很多git工作,但有时候没有替代好的历史视图/差异.希望能够在不使用书签的情况下打开.
loe*_*chg 95
安装SourceTree命令行工具将为您提供stree命令.这将允许您在SourceTree中打开当前目录.

您还可以指定仓库的特定路径
stree ~/my-repo-in-another-folder
Run Code Online (Sandbox Code Playgroud)
如果出于任何原因无法安装命令行工具,您还可以执行以下操作:
open -a SourceTree path-to-file
Run Code Online (Sandbox Code Playgroud)
并且可能在.bashrc或.zshrc中设置别名
alias sourcetree='open -a SourceTree'
Run Code Online (Sandbox Code Playgroud)
对于那些使用SourceTree 3的人
alias sourcetree='open -a SourceTree\ 3'
Run Code Online (Sandbox Code Playgroud)
Eri*_*rik 34
loeschg的答案可能行不通; 有些人在引用系统日志时出错,无法安装命令行工具.有一个公开的问题.
这里有一个解决方法.使用:
ln -s /Applications/SourceTree.app/Contents/Resources/stree /usr/local/bin/
Run Code Online (Sandbox Code Playgroud)
这将创建一个指向stree二进制文件的符号链接并将其放入/usr/local/bin.确保目录在您的路径上:which stree应该导致/usr/local/bin/stree.如果没有,则将其添加到您的PATH手动或使用echo export PATH='/usr/local/bin:$PATH' >> ~/.bash_profile,这适合您(重新启动shell以重新加载PATH变量).
在上述问题的页面上,发布了我未测试的另一种解决方法:alias stree='/Applications/SourceTree.app/Contents/Resources/stree'.如果您使用它,请在评论中报告它是否以及如何工作以及为什么您更喜欢它而不是符号链接.
对于这两种方法,streein 的路径SourceTree.app当然必须与您安装的位置相匹配SourceTree.app.
现在,stree已安装并可从任何目录访问.当shell的工作目录是存储库的根目录时,打开SourceTree的最短路径是stree ..
对于Windows上的用户,可以stree.bat在PATH环境变量中添加一个名为文件夹的批处理文件.(我有一个C:\batch文件夹,它在我的PATH中,我存储了所有的实用程序批处理文件.)将以下内容放入批处理文件中:
@echo off
start "" "C:\Program Files (x86)\Atlassian\SourceTree\SourceTree.exe"
Run Code Online (Sandbox Code Playgroud)
现在,您可以转到任何Git或Mercurial存储库并运行此命令,该命令将在SourceTree中打开存储库.
另一种Windows解决方案,适用于在Bash命令行(msys)上使用Git的用户.
在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
}
Run Code Online (Sandbox Code Playgroud)
重新加载你的shell.
现在你可以使用:
$ towinpath /c/Temp
Run Code Online (Sandbox Code Playgroud)
它会回应c:\Temp.
或者你可以打开SourceTree:
$ stree .
Run Code Online (Sandbox Code Playgroud)
它将在SourceTree中打开此存储库默认为"状态"面板.
| 归档时间: |
|
| 查看次数: |
25282 次 |
| 最近记录: |