是否有Git命令显示远程分支的远程名称?
目前,我坚持使用shell实用程序从远程分支引用中提取远程名称,如.
$ echo "remote-name/branch-name" | sed -r 's;^([^/]+)/.*;\1;'
remote-name有时为了验证目的而传递它
$ git rev-parse --symbolic-full-name "remote-name/branch-name" | ...我想知道是否有类似的内置命令。
$ git wanted-command [wanted options] "remote-name/branch-name"
remote-name我看过rev-parse、remote和ls-remote的手册。
发布于 2015-10-01 13:18:58
这不是最漂亮的解决办法,但我认为一般情况下应该可行。(我觉得应该有更好的办法,但现在我想不起来了。)
symref=$(git symbolic-ref --short HEAD)
git config --local "branch.$symref.remote"而且,为了完整性和总结下面的一些注释,可以从branch.$symref.merge获得远程跟踪分支的名称(可能与本地存储库中的remote ref名称不同)。
发布于 2022-02-09 17:43:09
如果不使用远程引用,而是从本地引用开始,则可以将git for-each-ref与%(upstream:remotename)格式结合使用。
我与git symbolic-ref -q HEAD一起使用它来获取当前签出的远程名称:
remote=$(git for-each-ref --format='%(upstream:remotename)' "$(git symbolic-ref -q HEAD)")最常见的远程演示:
% git for-each-ref --format='%(upstream:remotename)' "$(git symbolic-ref -q HEAD)"
originhttps://stackoverflow.com/questions/32887048
复制相似问题