我运行git bisect
在我的代码中发现错误:
Frank:wdi user$ git bisect good 36c1756119c19d4773d008a7ba944f8a9cb35a18
9095710f3e59feb7ad2c8609f4877998e0b5c07c is the first bad commit
commit 9095710f3e59feb7ad2c8609f4877998e0b5c07c
Author: Eric Baldwin <email address>
Date: Wed Aug 14 12:10:08 2013 -0400
Commit message
:100755 100755 3502c3b66f26ed6c6031fb2c406933143418b887 efe4970775fb1b35525abfbd9da7ded8a8003d39 M Gemfile
:100644 100644 f171121bb0cf5f5350636f032b07ebc3e643a271 d2fc157cf2bd0b26c7eac14a65fbd32b5fa5e312 M Gemfile.lock
:040000 040000 771b9240530ad699dadad1ea3117754b1c927e0a 92659d3a5a4cee031435394f03049a8baa2e1209 M app
:040000 040000 027677959fac0f3d0efca22c38e69000f19e7f9b eabdc7c09f6a8ef46d6e493bb3511a8c835e7f14 M spec
我想查看文件的良好版本与文件的错误版本之间的差异,以确定错误的确切含义。我怎么能用这个输出做到这一点?
答案 0 :(得分:4)
git diff first_bad_commit_hash^ first_bad_commit_hash
将显示第一次错误提交与紧接之前提交之间的差异。
在你的情况下,是:
git diff 9095710f3e59feb7ad2c8609f4877998e0b5c07c^ 9095710f3e59feb7ad2c8609f4877998e0b5c07c
答案 1 :(得分:1)
如果您没有,则应运行git bisect reset
将HEAD
重置为开头的位置。
然后,要查看第一个错误提交和最后一个错误之间的差异,请使用git diff --color 9095710f3e59feb7ad2c8609f4877998e0b5c07c 36c1756119c19d4773d008a7ba944f8a9cb35a18
。
答案 2 :(得分:1)
git说回归来自commit-id 9095710f3e59feb7ad2c8609f4877998e0b5c07c
所以,您可以通过以下方式查看9095710f3e59feb7ad2c8609f4877998e0b5c07c中的更改内容:
git show 9095710f3e59feb7ad2c8609f4877998e0b5c07c
或与实际HEAD的区别
git diff 9095710f3e59feb7ad2c8609f4877998e0b5c07c HEAD
依旧......