在this问题中,我找到了如何找到删除特定行的提交。我很想知道如何找到删除UTF-8 BOM的提交。
我发现GIT支持使用-G参数的正则表达式,但是以下命令找不到任何内容。
git log -c -G'\xEF\xBB\xBF'
答案 0 :(得分:1)
您可以使用git bisect
执行此任务。
如果您知道问题的起点,则注释文件会有所帮助 如果您不知道什么是破坏,并且自上次知道代码工作的状态以来已经有数十或数百次提交,您可能会转向git bisect寻求帮助。
bisect命令通过提交历史记录进行二进制搜索,以帮助您尽快识别哪个提交引入了问题。
假设您刚刚将代码发布到生产环境中,您将收到有关开发环境中未发生的错误的错误报告,您无法想象为什么代码会这样做。你回到你的代码,事实证明你可以重现这个问题,但你无法弄清楚出了什么问题。
您可以将代码一分为二。首先你运行git bisect start来开始工作,然后你使用git bisect bad来告诉系统你当前的提交被破坏了。那么,你必须告诉bisect什么时候最后一个已知的好状态,使用git bisect good [good_commit] ...
阅读[此处]有关如何操作的完整说明。
以下是有关如何使用它的示例代码