在BASH脚本中获取git repo名称和github用户名?

时间:2016-10-04 15:03:01

标签: git bash github

我正在尝试创建一个bash脚本,以在浏览器窗口中打开Github pull请求。

这是我需要运行的命令:

打开https://github.com/ParentOwner/ RepoName / compare / 开发 ... JoshuaSoileau CurrentBranch

粗体的东西需要是动态的。

我需要弄清楚如何在BASH中提取以下内容:

RepoName       -   name of the repo
develop        -   ARGUMENT to my bash script
JoshuaSoileau  -   github username of the current user
CurrentBranch  -   name of the currently checked out git branch.

我知道如何执行以下操作:

RepoName       -   ??
develop        -   $1 argument in my bash script
JoshuaSoileau  -   ??
CurrentBranch  -   $(git rev-parse --abbrev-ref HEAD)

如何在BASH脚本中提取1. RepoName2. Current github username

这是我到目前为止所做的:

git-open-merge() {
    open https://github.com/ParentOwner/??/compare/$1...??:$(git rev-parse --abbrev-ref HEAD)
}

它被称为:

git-open-merge develop

1 个答案:

答案 0 :(得分:1)

您可以使用:

git config --get-regexp user.name

对于用户名。对于存储库名称,您可能有不同的存储库,名称不同,所以我想解析:

git remote get-url origin
如果你只关心原产地,那么

会有所帮助吗?格式为(前缀在ssh或https之间不同)git@github.com:{github_handle}/{repo_name}.git