Git 如何找出我的功能分支来自哪个共享分支

Git 如何找出我的功能分支来自哪个共享分支,git,atlassian-sourcetree,smartgit,Git,Atlassian Sourcetree,Smartgit,在我们的项目中,很常见的情况是,我们希望恢复这些有点旧的分支,但我们不确定它们是从哪个共享分支分支生成的 因此,试着用尽可能具体的术语来回答这个问题: 我可以识别一小部分“共享分支” 我有一个特定的功能分支F 有没有一个很好的工具(最好是GUI)可以让我轻松地识别共享分支F是从哪个分支分支来的?

在我们的项目中,很常见的情况是,我们希望恢复这些有点旧的分支,但我们不确定它们是从哪个共享分支分支生成的

因此,试着用尽可能具体的术语来回答这个问题:

  • 我可以识别一小部分“共享分支”
  • 我有一个特定的功能分支F

  • 有没有一个很好的工具(最好是GUI)可以让我轻松地识别共享分支F是从哪个分支分支来的?

    应该向您显示
    的历史以及它的分支点。

    谢谢,但我发现很难从该分支的输出中识别出这个分支是从哪个分支上切下来的。我希望有更好的。我很容易在第一次提交之前确定提交。也许提出这个问题的另一种方式是,我如何确定哪些分支在其历史记录中包含该提交?这实际上有点接近我想要的:git for each ref——contains分支实际上没有父分支。这些信息不可用,一般无法计算(尽管在许多特定情况下,有一个明显的候选者)。另请参见。在这方面,“切割”的含义是什么?分支点?@torek我创建新分支时所在的分支。达布里克:我想你是想把这个问题告诉@berkes。无论如何,Git并没有将这些信息正式保存到任何地方。reflog确实有足够的信息将其拼凑在一起,在一段时间内,直到包含该信息的reflog条目过期,但即使只是猜测,因为您可以运行
    git branch foo a123456
    ,这使得新分支
    foo
    指向提交
    a123456
    ,而不管您当前的提交/分支如何。您可以分享更多关于布局的信息吗?例如,您共享的分支机构是否有共同的父母,或者他们是完全独立的?如果它们共享一个共同的父对象(通常是这样),它们是在某个点上合并到另一个,还是在某个点上分支而不再见面?