如何使用url获取远程的合格Git URL。<base /> .explaceOf?

时间:2014-05-05 10:47:05

标签: git

我使用 url.<base>.insteadOf 方案使用Git存储库将实际的repo URL存储在〜/ .gitconfig中。我使用的其中一个应用程序尝试使用 git-config 计算出对repo的访问方案(ssh,http等),但它失败了,因为输出看起来像这样:

# git config --get remote.origin.url
gerrithost:department/project

在我的〜/ .gitconfig 中设置了 gerrithost

[url "ssh://machine.dn.tld:29418/"]
insteadOf = gerrithost:

应用程序希望 git config --get remote.origin.url 的输出如下所示:

ssh://machine.dn.tld:29418/department/project

git remote -v 显示已解析的网址,但我必须解析输出以获取正确的远程和字段。

是否可以使用git-config(或其他工具之一)获取已解析的URL,或者我是否必须恢复为 git remote 编写解析器?

1 个答案:

答案 0 :(得分:1)

正如StefanNäwe已在评论中解释的那样,您正在寻找的命令是

git ls-remote --get-url

有关详细信息,请查看ls-remote documentation