git-open
输入 git open
在浏览器中打开仓库网站(GitHub、GitLab、Bitbucket)。
用法
git open [远程名称] [分支名称]
# 在仓库网站上打开此分支的页面
git open --commit
git open -c
# 在仓库网站上打开当前提交
git open --issue
git open -i
# 如果此分支名称类似 issue/#123,将在仓库网站上打开相应的问题
git open --print
git open -p
# 仅在终端打印 URL,但不打开
(git open
适用于这些托管仓库提供商,git open --issue
目前仅适用于 GitHub、Visual Studio Team Services 和 Team Foundation Server)
示例
$ git open
# 打开 https://github.com/TRACKED_REMOTE_USER/CURRENT_REPO/tree/CURRENT_BRANCH
$ git open someremote
# 打开 https://github.com/PROVIDED_REMOTE_USER/CURRENT_REPO/tree/CURRENT_BRANCH
$ git open someremote somebranch
# 打开 https://github.com/PROVIDED_REMOTE_USER/CURRENT_REPO/tree/PROVIDED_BRANCH
$ git open --issue
# 如果分支使用 issues/#123 的命名约定,
# 打开 https://github.com/TRACKED_REMOTE_USER/CURRENT_REPO/issues/123
$ git open --print
# 打印 https://github.com/TRACKED_REMOTE_USER/CURRENT_REPO/tree/CURRENT_BRANCH
$ git open --suffix pulls
# 打开 https://github.com/TRACKED_REMOTE_USER/CURRENT_REPO/pulls
安装
基本安装
首选的安装方法是将 git-open
脚本添加到路径中的某个位置(例如,将目录添加到 PATH
环境变量中,或将 git-open
复制到现有的包含路径中,如 /usr/local/bin
)。
通过 NPM 安装:
npm install --global git-open
Windows Powershell
将 git-open 保存在任意位置,例如 ~/Documents/Scripts/git-open.sh,并在 Powershell 配置文件中定义一个函数(参见 ~/Documents/WindowsPowerShell/profile.ps1),如下所示:
function git-open { cmd /c "C:\Program Files\Git\usr\bin\bash.exe" "~/Documents/Scripts/git-open.sh" }
Set-Alias -Name gop -Value git-open
使用 cmd
终端的 Windows
将 git-open
脚本保存在可通过 %PATH%
环境变量访问的任何位置。
ZSH
Antigen
在 .zshrc
中添加 antigen bundle paulirish/git-open
,与其他 bundle 命令一起。
下次启动 zsh 时,Antigen 会自动为你克隆插件,并定期检查 git 仓库的更新。你也可以通过 antigen bundle paulirish/git-open
将插件添加到正在运行的 zsh 中进行测试,然后再将其添加到 .zshrc
中。
Oh-My-Zsh
git clone https://github.com/paulirish/git-open.git $ZSH_CUSTOM/plugins/git-open
- 将
git-open
添加到插件列表中 - 编辑~/.zshrc
并将plugins=(...)
改为plugins=(... git-open)
source ~/.zshrc
Zgen
在 .zshrc 文件中,与其他 zgen load
调用相同的函数中添加 zgen load paulirish/git-open
。下次运行 zgen save
时,ZGen 将负责克隆仓库,并会定期检查 git 仓库的更新。
zplug
zplug "paulirish/git-open", as:plugin
支持的远程仓库
git-open 可以自动猜测以下主机上远程仓库(默认查找 origin
)的对应仓库页面:
- github.com
- gist.github.com
- gitlab.com
- GitLab 自定义托管(见下文)
- bitbucket.org
- Atlassian Bitbucket 服务器(前身为 Atlassian Stash)
- Visual Studio Team Services
- Team Foundation Server(本地部署)
- AWS Code Commit
配置
有关如何配置 git-open
的更多信息,请参阅手册页。
替代项目
完整的 GitHub 打开支持可以参考 hub。
这是 GitHub 的官方项目,提供 hub browse
功能。
Homebrew 有一个替代版本的 git-open, 它只适用于 GitHub,但也可以打开用户个人资料页面。
@gerep 有一个替代版本的 git-open, 适用于几个提供商。值得注意的是,它打开 BitBucket 的默认视图,而不是源代码视图。
当然,还有 jasonmccreary 的原始 gh, 这个插件就是从它派生而来的。
致谢
jasonmccreary 完成了最初的艰苦工作。此后,许多贡献者提交了出色的 PR。
贡献与开发
请在每个 PR 中提供您正在解析的 URL 示例。
测试:
您需要安装 bats,这是 Bash 自动化测试系统。也可以通过 brew install bats
安装。
git submodule update --init # 拉取断言库
# 运行一次测试套件:
bats test # 或 `npm run unit`
# 使用 `entr` 在每次更改时运行
brew install entr
npm run watch
相关项目
git recent
- 查看最近的 git 分支diff-so-fancy
- 让git diff
输出更加美观
许可证
版权所有 Jason McCreary 和 Paul Irish。基于 MIT 许可。 http://opensource.org/licenses/MIT
更新日志
- 2018-12-03 - 2.1.0 发布。
- 2017-12-01 - 2.0 发布。重大变更:Gitlab 配置处理方式不同。
- 2017-12-01 - 添加自定义远程仓库配置
- 2017-11-30 - 添加 VSTS 支持
- 2017-10-31 - 添加
--issue
和-h
选项 - 2017-10-30 - 添加自定义域名配置
- 2017-10-30 - 添加 WSL 支持
- 2017-06-16 - 引入 BATS 测试套件
- 2017-06-15 - @dermagia 重写并简化整个脚本
- 2016-07-23 - Readme:修复 oh-my-zsh 安装说明
- 2016-07-22 - 1.1.0 发布。更新并为 package.json 和 readme 添加 linter。
- 2016-07-11 - 更新 Readme 格式和安装说明。开始记录更新日志