![]() |
1
17
更新 正如Amalloy所指出的,Git的最新版本支持通过给“branchname@upstream”(或“branchname@u”,或“@u”(用于head的跟踪分支)查找给定分支的匹配跟踪分支。这实际上取代了下面的脚本。你可以做到:
例如,我有
原始答案 一般来说,要找到跟踪分支似乎不是一个简单的方法,不需要解析比几个shell命令实际更多的git-config。但在许多情况下,这将有很长的路要走:
另一种更野蛮的方法:
Jamessan的答案解释了如何找到$tracking ou branch和head using之间的相对差异。
(音符 三 $tracking ou branch和head之间的点)。这将显示两个“ARM”上的提交,前面有一个区别标记:“<”用于$tracking_分支的提交,而“>”用于头上的提交。 |
![]() |
2
22
如果两个命令都显示提交,那么您就有了不同的分支。 |
![]() |
3
11
你可以试试
我认为这种格式比
|
![]() |
4
7
编辑:
我的原始答案实际上不是很好,因为它依赖于用户有一个称为“来源”的远程设备。如果当前分支除了原点之外还有一个跟踪分支,那么它也会失败。这些缺陷基本上使它无用。然而,@araqnid的答案并不是最有效的方法,也不是他到达目的地的方式。
原始答案:(次,但为了清楚起见)也许是我能找到的最简单的方法(灵感来自@insidepower)
我以前使用过@araqnid的方法,但现在我想我将把一些脚本移到这个方法,因为它要简单得多。这可以在任何UNIX系统上工作。 |
![]() |
5
5
在Git的现代版本中,
因此,要计算远程跟踪分支后面有多少提交:
要查看遥控器的领先程度,只需切换顺序:
要获得更易于阅读的摘要,您可以要求输入日志:
为了我自己的目的,我正在编写一个将替换
|
![]() |
6
5
默认情况下,不显示分支信息,但如果添加
如果您是最新的(在提取之后),分支行将只是:
如果你在前面:
如果你落后了:
两者兼而有之:
注意
|
![]() |
7
2
为什么这样不行:
|
![]() |
8
1
Araqnid的答案中最重要的部分代码对我来说不起作用,所以也许自18个月前Git编写以来,它的某些内容已经发生了变化。如果我改变了,它就会工作:
到
但是,在跟踪本地分支时仍然存在一个问题,在这种情况下,您必须修剪远程部分(它变为“.”):
然后,您可以通过编程方式获得前后的修订数量,如下所示:
我已经编写了脚本来完成所有这些工作(而且更多-例如,他们还可以尝试在Git SVN桥的另一侧发现远程设备),并将它们发布到 my git-config repository on github . 例如,这是我的 git-compare-upstream . 见 the README 用于安装说明和其他方便的相关脚本。 |
![]() |
9
1
Git2.5+引入了一个新的快捷方式,它引用了您要推到的分支。
这意味着对于配置为推送到分支的所有分支,您有另一个选项来查看前面/后面。
“看更多” Viewing Unpushed Git Commits “ |
![]() |
Harry · 如何在编译时获取克隆的git仓库的标签 7 月前 |
![]() |
Ooker · 如何从blob中删除秘密? 7 月前 |
![]() |
hasdrubal · git日志图智能分支过滤器 7 月前 |
![]() |
J. Doe · 为什么git中没有跟踪git文件? 8 月前 |