3

jquery git リポジトリで特定の変更を見つけようとしたときに、奇妙な問題に遭遇しましたgit-bisect。bisect コマンドは、bisect プロセスの続行を妨げる変更されたファイルを作成するようです。最初に実行したコマンドは次のとおりです。

git clone https://github.com/jquery/jquery.git
cd jquery
git bisect start
git bisect bad
git bisect good 2aa67026ebe6bea90fd137fc99b4c9422977e3f0

どの時点で出力が得られます:

Bisecting: 1977 revisions left to test after this (roughly 11 steps)
[3e5520fbdc7231b3f38e145020b40524c1e6654d] Tagging the 1.4.3rc2 release.

しかし、今、実行するgit statusと、出力は次のようになります。

# Not currently on any branch.
# You are currently bisecting.
#    (use "git bisect reset" to get back to the original branch)
#
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#   modified:   build/google-compiler-20091218.jar
#   modified:   build/js.jar
#   modified:   test/data/text.php
#   modified:   test/delegatetest.html
#

4 つのファイルが変更済みとして表示されます。次に を実行するgit bisect badと、ローカルの変更がチェックアウトによって上書きされるというエラーが表示されます。

私は何か間違ったことをしているのですか、それとも仕組みを誤解してgit-bisectいますか? この問題の回避策はありますか? ありがとう!

4

4 に答える 4

0

コマンドを入力git bisect reset HEADして、二分状態をクリーンアップし、元の HEAD に戻す必要があります。

于 2012-10-02T17:41:36.433 に答える
0

gitignore ファイルが 2 つのリビジョン間で変更されたため、git はこれらの 4 つのファイルが予想とは異なると判断したと思います。

gitignore、除外ファイル、およびそれらの変更されたファイルの --cached などの適切なオプションを使用して、「git diff」(man ページ)を試してください。

于 2012-10-05T20:16:52.097 に答える