2016-08-18 12 views
3

私はredesign-test-fixesという別のブランチにあり、git bisect startを実行しています。その後、バグをテストしてgit bisect badを実行します。ターミナルは出力を出力しません。私はgit bisect goodを実行します。同じことですが、出力は端末に出力されません。あたかも二等辺線が走っていないかのようです。通常は、残っているステップ数についての情報を端末に出力することを期待しています。何が間違っていますか?これをどのように修正できますか?私は二分法を実行することを許可していないいくつかのgit状態でいますか?git bisectがコマンドに応答しません

On branch redesign-test-fixes 
You are currently bisecting, started from branch 'redesign-test-fixes'. 
    (use "git bisect reset" to get back to the original branch) 

nothing to commit, working directory clean 
+0

'git status'とは何ですか? – orkoden

+0

'ブランチで再設計テストを修正する コミットするものがない、作業ディレクトリをクリーンにする ' – jason328

答えて

5

あなたは間違ってgit bisectを使用している:私はgitのステータスがで応答git bisect startを実行する場合、しかし、

On branch redesign-test-fixes 
nothing to commit, working directory clean 

gitのステータスはで応答します。 git bisect startと入力したら、git bisectを使用するための一連のコミットを提供する必要があります。この範囲は、「良い」コミットによって定義されます。このコミットでは、バグが表示されないことが確認され、その後にバグが存在すると確信する「悪い」コミットが続きます。したがって、あなたの使い方は次のようにオフを開始する必要がありますあります

Bisecting: 10 revisions left to test after this (roughly 4 steps) 

理由:

git bisect start 
git bisect good <SHA-1 of good commit> 
git bisect bad <SHA-1 of bad commit> 

あなたが悪いと良いの間に20回のコミットを持っていたと仮定すると、あなたは、このような出力を見に何かが表示されるはずです10個のリビジョンが残っているのは、Gitがすでに選択した範囲で中間のコミットをチェックアウトしているからです。が最も多く、がコミットを見つけるために調べる必要があることが分かります。

次に、この中間コミットでアプリケーションを検査し、バグが存在するかどうかを判断する必要があります。

git bisect good 

を、あなたはバグを参照してくださいか場合は次のように入力します:あなたはバグを見つけることができませんない場合は、入力し

git bisect bad 

これは、再び、あなたが出力このように見えるが表示されます:

明示的に言わずに、Gitは再び新しい範囲の中間コミットをチェックアウトしました。

あなたはgit bisect good/badを入力して、このプロセスを継続する、とがある場合には何も二分して残っていない、Gitはコミットあなたが最初に悪いが表示されます:

a8h39dk32... is the first bad commit 

さらに読書:ここ

がありますgit bisectの完全な使用方法をカバーするgreat tutorialにリンクしてください。そして私はGitの公式文書でさえ完全に徹底的ではないことに気付きました。

+1

私は手動でバイセクトを開始するのに良いコミットを見つけなければなりませんか?'git bisect'はコミットの中間点に移動して、良いと悪いコミットのSHA-1を提供するのではなく、そこから作業するだけですか?私の最近のコミットは、デフォルトの不良コミットではありませんか?私はいつもgit bisectがSHA-1のコミットを必要としないと考えました。 – jason328

+1

「コミットの中間点」とはどういう意味ですか?最初のコミットが数年前に行われたとしても、あなたの最新のコミットと最初のコミットの中間点を選択するのは本当に良い設計ですか?はい、 'git bisect'を使うためにコミットの_range_(初期の良いコミットと悪いコミット)を提供する必要があります。 –

+1

@ jason328はい、ドキュメントは、この点では貧弱です。なぜなら、あなたが考え方を残したのは、それが本当にこのような方法ではない特定の方法だったからです。私の答えを試して、まだ問題がある場合は教えてください。 –

関連する問題