我有一个团队,有几个人在同一个git存储库上工作,使用git flow方法(主,开发,修补程序,功能,发行版)和远程裸存储库。
我们有一个修补程序,其中一些提交已成功合并到master中,并且一切都很好。 现在,一周之后,以及之后的很多变化,在继续开发之后,我们还有一个未合并到master中的发布分支。
我们注意到系统中的某些文件已恢复到修补程序之前的状态。这些文件最近才在上面提到的修补程序中被触及,并且在开发分支中没有对它们进行进一步的更改。
奇怪的是,我在git日志历史记录中找不到合并,这些合并显示任何这些文件存在冲突,这可能表明团队成员发生了冲突并且没有正确解决它。
我只能看到来自修复程序的提交,它添加了所需的更改,但我找不到以后的提交来恢复这些更改。
我尝试使用git whatchanged -p -r -m -- myfile
并再一次,我看到的是修复程序的提交。
我怎样才能知道这些文件发生了什么?它可能是我的存储库中的损坏吗?
答案 0 :(得分:3)
git有一个内置机制。
平分: https://www.kernel.org/pub/software/scm/git/docs/git-bisect.html
运行此内置工具,您将能够跟踪更改消失的有问题提交。
在此处阅读更多内容,了解如何使用它以及如何使用它。 http://alblue.bandlem.com/2011/07/git-tip-of-week-git-bisect.html