在使用--track(或保留默认值,或--notrack)创建分支后,您稍后希望被提醒分支正在跟踪什么。除了搜索 .git/config 文件之外,还有其他方法可以显示分支正在跟踪的内容吗?
问问题
14354 次
5 回答
31
用途:git branch -vv
查看哪些分支被跟踪,哪些没有。
于 2010-09-02T22:28:45.373 回答
8
请注意,使用git1.8.3 (April 22d, 2013),您有一种强调上游分支的新方法:
" " 学会了用不同的颜色(默认为蓝色)
git branch -vv
绘制它与之集成的分支的名称。color.branch.upstream
C:\prog\git\git>git branch -vv
* master 118f60e [origin/master] Sync with maint
^^^^^^^^^^^^^
|
--- now in blue
于 2013-04-23T06:53:49.610 回答
7
如果你想知道给定的分支,你可以这样做:
git config --get branch.<branch>.remote
如果它打印一个遥控器,它正在跟踪某些东西。如果它什么都不打印并返回失败,则不是。
于 2010-09-02T23:54:39.323 回答
2
如果您需要以自动方式访问此信息,您将希望避免尝试解析branch -vv
( slebetman's answer ) 的输出。
Git 提供了一组具有稳定接口和输出格式的低级命令。这些命令(称为“管道”)是“脚本”目的的首选接口。git for-each-ref命令可以通过令牌提供所需的信息(upstream
在 Git 1.6.3 及更高版本中可用):
% git for-each-ref --shell --format='
b=%(refname:short) u=%(upstream:short)
# Make a fancy report or do something scripty with the values.
if test -n "$u"; then
printf "%s merges from %s\n" "$b" "$u"
else
printf "%s does not merge from anything\n" "$b"
fi
' refs/heads/ | sh
master merges from origin/master
other does not merge from anything
pu merges from origin/pu
于 2010-09-03T04:35:14.857 回答
-1
感谢您的提示Jefromi
使用以下命令,您可以获得特定分支的远程跟踪分支。
git config --get branch.<branch>.merge
要更改远程跟踪分支,您只需更改此配置值即可。
git branch -vv
注意:这是(已在此处回答)
和git branch -u
(使现有的 Git 分支跟踪远程分支?)的替代方法
于 2016-11-02T11:46:19.040 回答