web-dev-qa-db-ja.com

バザールの古い改訂版に戻る

バザールの履歴(作業ツリーの変更)に戻って、特定のバグを引き起こしたコミットを見つけたいと思います。

コミットを削除したくありません。バグが見つかるまで作業ツリーを変更してから、最新のリビジョンに戻って作業を行います。

そのための2つのコマンドは何ですか(以前のコミットに戻り、後で最新のリビジョンを再度チェックアウトします)?

前もって感謝します。

32
knub

作業ツリーを特定のリビジョンNに戻すには:

bzr revert -rN

作業ツリーをブランチ内の最新のリビジョンに戻すには:

bzr revert
21
jelmer

作業ツリーをリビジョンNに戻すには、2つの方法があります。最初の方法は、他の回答で言及されています。

bzr revert -rN

これにより、作業ツリーをリビジョンNの内容と一致させるために必要なすべてのファイルが変更されます。bzr statusを実行すると、それらすべてのファイルが変更されたものとして表示されます。 bzr commitを実行すると、これらの後方変更はすべてコミットされ、HEADリビジョンはリビジョンNのようになります。

ブランチの最新バージョンに戻るには:

bzr revert

bzr updateを実行することもできますが、ブランチがチェックアウトの場合は、新しいリビジョンが取得される可能性があります。

時間をさかのぼるための他のオプションはこれです:

bzr update -rN

2つの違いは、bzr updateでは変更が加えられていないように見えることです。作業ツリーが古くなっているだけです。

ブランチの最新バージョンに戻るには:

bzr update
16
Don Kirkby

bzr revert -rNで回答した他のコメント投稿者は、質問に対する直接の回答であるという意味で確かに正しいですが、の存在をテストするためにチェックスルーするコミットが多数ある場合バグですが、二分法を使用する方がはるかに効率的です。あるとき、最後の正常なコミットが300コミット前であったバグが提示され、bisectionはわずか8パスで有罪のコミットを見つけました(つまり、300のうち8つのコミットをチェックするだけで1つを見つけることができましたバグが発生しました)。

http://doc.Bazaar.canonical.com/plugins/en/bisect-plugin.html

チェックする必要のあるコミットの数に圧倒されていると感じている場合は、これにより、関連する作業の量が大幅に削減されます。

5
robru

作業ツリーを以前のリビジョンNの状態に変更するには

bzr revert -r N

作業コピーを最新リビジョンの状態に更新するには:

bzr up

バザールクイックリファレンスカード

4
Lazy Badger

bzr log --forwardを使用して、DESCソートで以前のバージョンを確認できます。

また、bzr revert -rを使用して、バージョンをに変更できます。

最後のバージョンに戻したい場合は、bzrrevertを実行してください

0
Fouad Mekkey