コミットを誘発する失敗を見つけるためにgitbisectを使用しています。ただし、範囲内のコミットの多くは、明らかに無関係です(ドキュメントまたは単体テストへのコミットであるため)。特定のディレクトリ内のファイルに影響を与えるコミットをgitbisectが自動的にスキップするようにしたいと思います。これはどういうわけか可能ですか?
4031 次
1 に答える
36
ここにはいくつかのオプションがあります。
特定のコミットを無視する
git bisectコミットをスキップする機能が含まれています。テストしたくないコミット、タグ、範囲を指定できますgit bisect skip 0dae5f ff049ab ...あなたの前にこれをするだけ
git bisect runで、あなたが指定したものをスキップするはずです。ソースが壊れているフォルダを指定する
bisectまた、問題を探すフォルダーを指定することで、コミットテストを削減することもできます。これは、プロセスの開始時に、 (標準マニュアルからの引用)bisectに追加の引数を指定することによって行われます。git bisect startgit bisect start -- arch/i386 include/asm-i386Bisectは、指定されたフォルダーにアクセスするコミットのみを考慮します。
特定のファイルまたはフォルダーにアクセスするコミットを自動的に収集する場合はgit log、そのために使用できます。たとえば、次のコマンドは、特定のフォルダー内のファイルを変更するコミット名を提供します。
git log --pretty=format:%H tests/ docs/
そしてgit bisect skip、シェル機能を使用して結果をに提供できます。
git bisect skip `git log --pretty=format:%H tests/ docs/`
于 2010-07-05T12:53:17.277 に答える