コード内の特定のバグを追跡しようとしていますが、問題は、コミットのブロックのどこかにバグが表示され、コミットが壊れているかどうかを確認する唯一の方法がコメント化されているため、どのコミットであるかがわかりません。 。
1行のコードを変更し、その行を複数のコミットにマージする必要がありますが、これは可能ですか?
コミットのブロック内で特定の動作をする最初(または最後)のコミットを見つける最良の方法は、を使用することgit bisect
です。より具体的には:git bisect run
。
プロセス全体を自動化するには、問題の1行をコメントアウトしてから、テストを開始するスクリプトを作成する必要があります。スクリプトは、コードが良好な場合はコード0で終了し、コードが不良の場合はコード1で終了する必要があります。
例については、こちらをお読みください:http ://www.metaltoad.com/blog/mechanizing-git-bisect-bug-hunting-lazy 。
おそらくあなたはただ使う必要がありますgit bisect
か?