如何知道提交的分支名称
How to know the branch name of a commit
在 GitKraken 中,我们从一个分支报告到另一个具有相同引用的提交。
问题: 如果我们使用 CTRL+F 进行搜索,很难检测到提交位于哪个分支。
有没有办法从提交中知道分支的名称?
我们有 7 个提交具有相同的引用
如果我 select 其中之一,我将提交。
由此看来,我不可能知道分行的名字。
试试这个:
git branch --contains <commit>
然后阅读:
How to list branches that contain a given commit?
对于提交 $commit
,要找到恰好指向它的分支:
git for-each-ref refs/heads --format="%(refname:lstrip=2)" --points-at $commit
并找到可到达的分支:
git for-each-ref refs/heads --format="%(refname:lstrip=2)" --contains $commit
简而言之:没有
正如@RomainValeri 在他的评论中所说:提交不会 "belong" 到任何分支。分支只不过是指向提交的指针。可能有一百个分支可以从中到达提交,或者可能有 none.
@MohammadAnsari 建议的 git 命令 git branch --contains <commit>
将向您显示可从中提交的所有分支的列表。
关于 GitKraken:您的问题没有立竿见影的解决方案。如果提交在图表的下方,则很难判断它导致哪个祖先提交。此外,没有 GitKraken 命令可以执行 git branch --contains <commit>
所做的(或我知道的 none)。
也许您应该过度考虑使用相同名称提交的工作流程,或者重新考虑您的分支策略。你有几个长 运行 分支吗?如果所有分支都集中在一个 master
上,那么问题就微不足道了。
知道commit id就可以找到。
使用 "ctrl+f" 它将打开 "Search Commits" 对话框,您需要在其中输入提交 ID。
按下 enter 后,树形图将导航到该提交,您可以直观地看到它被放置在哪个分支上。
在座的各位git我肯定是知识较少的,但是呢:
- 复制给定的提交散列
- 运行
git show [commit-hash]
在一个 git bash
- (长)输出的开头应如下所示
origin/version-210627 处显示的信息似乎显示了分支(在我的例子中是版本 210627)。
在 GitKraken 中,我们从一个分支报告到另一个具有相同引用的提交。
问题: 如果我们使用 CTRL+F 进行搜索,很难检测到提交位于哪个分支。
有没有办法从提交中知道分支的名称?
我们有 7 个提交具有相同的引用
如果我 select 其中之一,我将提交。
由此看来,我不可能知道分行的名字。
试试这个:
git branch --contains <commit>
然后阅读: How to list branches that contain a given commit?
对于提交 $commit
,要找到恰好指向它的分支:
git for-each-ref refs/heads --format="%(refname:lstrip=2)" --points-at $commit
并找到可到达的分支:
git for-each-ref refs/heads --format="%(refname:lstrip=2)" --contains $commit
简而言之:没有
正如@RomainValeri 在他的评论中所说:提交不会 "belong" 到任何分支。分支只不过是指向提交的指针。可能有一百个分支可以从中到达提交,或者可能有 none.
@MohammadAnsari 建议的 git 命令 git branch --contains <commit>
将向您显示可从中提交的所有分支的列表。
关于 GitKraken:您的问题没有立竿见影的解决方案。如果提交在图表的下方,则很难判断它导致哪个祖先提交。此外,没有 GitKraken 命令可以执行 git branch --contains <commit>
所做的(或我知道的 none)。
也许您应该过度考虑使用相同名称提交的工作流程,或者重新考虑您的分支策略。你有几个长 运行 分支吗?如果所有分支都集中在一个 master
上,那么问题就微不足道了。
知道commit id就可以找到。 使用 "ctrl+f" 它将打开 "Search Commits" 对话框,您需要在其中输入提交 ID。 按下 enter 后,树形图将导航到该提交,您可以直观地看到它被放置在哪个分支上。
在座的各位git我肯定是知识较少的,但是呢:
- 复制给定的提交散列
- 运行
git show [commit-hash]
在一个 git bash - (长)输出的开头应如下所示
origin/version-210627 处显示的信息似乎显示了分支(在我的例子中是版本 210627)。