如何确定特定分支的源分支?
|
我在git中有一个分支,想弄清楚它最初是从哪个分支分支出来的,在什么时候提交的。
Github似乎知道,因为当您执行拉取请求时,它通常会自动设置它应该进入的分支,但是我无法从命令行中手动确定如何执行此操作。
让我添加一个具体的例子:
master -- ongoing development
2.2 -- stable maintenance
创建了一个特征分支feature
(在下面的提交B
处)并进行了处理(B\'
,C\'
和E\'
),并与源分支合并以拾取C
和D
feature branch: B\'-C\'-C--D--E\'
/ /
source branch: A--B--C--D--E-- ...
现在,我想将feature
合并回其源中,但是我不确定它最初是master
还是2.2
的分支。为了将特征合并到正确的源中,是否有一种编程方式来找出源分支是ѭ10还是ѭ11?
没有找到相关结果
已邀请:
3 个回复
了驳
查看git-diff的输出可能会为您提供一个线索:
列出的提交次数较少的分支很可能是分支点(但是显然不能保证。 您还可以使用gitk或git log进行浏览:
坍锭嘉韭蓝
第一个将显示您的分支并为您提供合并信息。第二个将帮助您了解两个特定分支(上次分支的位置)之间的关系。
墩瓣茅械
使用--contains,仅显示包含命名提交的分支 (换句话说,尖端提交的分支是 命名提交)。使用--merged,只有分支合并到指定的 提交(即,其尖端提交为 可以从指定的提交提交)。使用--no-merged,将仅列出未合并到指定提交中的分支。如果缺少该参数,则默认为HEAD(即 当前分支的尖端)。 考虑到先前的提交已被推送到远程分支,可以使用--contains键过滤可用的远程分支。
要么
如果您有2个未按下的提交,则要相应地更改数量以达到已经按下的提交:
如果本地未推动的提交量未知,则可以循环执行直到获得结果为止,例如:
当然,您可以将迭代次数限制在安全范围内。