変更をレビューする¶
リープする前にロックする¶
作業が完了したら、恒久的に記録することに先駆けて変更をレビューするのはよい考えです。 この方法で、何を意図しているのかをコミットすることを確認できます。
2つのbzrコマンド: status と diff はとりわけ便利です。
bzr status¶
status コマンドは最後のリビジョン以降に作業ディレクトリに行われた変更内容を伝えます:
% bzr status modified: foo
bzr status
は 変更されないもしくは無視される “つまらない” ファイルを隠します。
statusコマンドはチェックするためにオプションとしてファイルもしくはディレクトリの名前を渡すことができます。
bzr diff¶
The diff コマンドはすべてのファイルへの変更の全文を標準のunified diffとして表示します。 これは ‘’patch’‘、 ‘’diffstat’‘、 ‘’filterdiff’’ と ‘’colordiff’‘といった多くのプログラムを通してパイプで引き渡すことができます:
% bzr diff
=== added file 'hello.txt'
--- hello.txt 1970-01-01 00:00:00 +0000
+++ hello.txt 2005-10-18 14:23:29 +0000
@@ -0,0 +1,1 @@
+hello world
-r
オプションによって、ツリーは前のリビジョン、もしくは示された2つのリビジョンの違いを表示します:
% bzr diff -r 1000.. # r1000 からの全ての変更
% bzr diff -r 1000..1100 # 1000 から 1100 までの変更
1つのリビジョンの変更だけを見たい場合は、 -c
オプションを利用します。
% bzr diff -c 1000 # r1000 による変更
# -r999..1000 と同じ意味
--diff-options
オプションによってbzrは外部のdiffプログラムにオプションを渡して実行します。例です:
% bzr diff --diff-options --side-by-side foo
プロジェクトの中には新旧のファイルのためのパスの始めで接頭辞を表示するためにパッチを好むところもあります。
--prefix
オプションはそのような接頭辞を提供するために使われます。
ショートカットとして、 bzr diff -p1
は patch -p1
コマンドで機能する形式を生み出します。