首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在提交后查找提交

在提交后查找提交
EN

Stack Overflow用户
提问于 2016-01-10 09:56:01
回答 2查看 190关注 0票数 1

我有一段非常深厚的历史

代码语言:javascript
复制
0000001
0000002
0000003
0000004
...

我使用git-bisect查找返回0000003的旧问题的散列。结果表明,解决方案可能位于此散列0000002之后的提交中,甚至可能是最近提交的。

我可以用

代码语言:javascript
复制
git log 0000003

,它将在提交之前显示项目的历史,但在提交之后则不会显示任何内容。

代码语言:javascript
复制
0000003
0000004
...

我希望仅使用散列查找/在0000003之后找到提交--也就是说,我希望在不手动滚动所有历史记录的情况下找到0000002

这是怎么做的?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-10 10:13:04

您可以尝试查找接下来的几个提交(在00003之后创建的提交)。

代码语言:javascript
复制
git log --reverse --pretty=format:%H --ancestry-path 3...master | head -3

3是提交00003的SHA1。

您还有"我如何在git中找到下一个提交?“中描述的其他技术。

例如:

代码语言:javascript
复制
git rev-list HEAD..3 | tail -3

这假设那些下一个提交可以从主或头访问。

如果您不考虑特定的“目的地”提交,而是希望看到可能出现在任何分支上的子提交,则可以使用以下命令:

代码语言:javascript
复制
git rev-list --children --all | grep ^${COMMIT}
票数 1
EN

Stack Overflow用户

发布于 2016-01-10 10:03:54

git bisect是一个很好的选择,就像您已经使用它一样。

你可以用头~X

代码语言:javascript
复制
# set X to be the number of commits you want to start with
git log HEAD~X

# Range: between HEAD to the previous X commits
git log HEAD...HEAD~X

阅读这里关于提交范围的内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34704119

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档