私はgitを初めて使用し、「git bisect」を発見しました。新しく作成された単体テスト (事前に存在しなかったもの) を使用してエラーをチェックできる場合、一般的にどのように使用されますか?
単体テストを含むリポジトリがあるとしますが、よくあることですが、それらは完全ではありませんでした。一部のバージョンで機能が動作していないことを発見しましたが、それが以前のバージョンにあったことはわかっています。残念ながら、その機能は単体テストではチェックされていません。私が今やりたいことは次のとおりです。
- テスト ケースを作成します (もちろん、最初は失敗します)。
- このテスト ケースを使用して、git bisect を使用してエラーを導入しているコミットを探します。
- エラーを修正し、修正 (およびテスト ケース) をコミットする
この使用例には 1 つの問題があります。git bisect が古いバージョンをチェックアウトすると、挿入されたばかりのテスト ケースが存在しないため、エラーのチェックに使用できません。テストをコミットせずに、ローカルの変更として保持することができます。しかし、tests ファイルが途中のバージョンで変更されたと想像すると、マージの競合が発生する可能性があります。
じゃあ何をすればいいの?git bisect は一般的にどのように使用されますか?