Next: , Previous: , Up: バージョンコントロール   [Contents][Index]


28.1.7 VC Change Log

C-x v l

カレントファイルセットの変更履歴を表示します(vc-print-log)。

C-x v L

カレントリポジトリーの変更履歴を表示します(vc-print-root-log)。

C-x v I

pull操作が取り込む変更を表示します(vc-log-incoming)。

C-x v O

push操作が送信する変更を表示します(vc-log-outgoing)。

C-x v h

カレントバッファーがvisit中のファイルのリージョンにたいして行われた変更の履歴を表示します(vc-region-history)。

M-x vc-log-search RET

指定したパターンの変更履歴を検索します。

C-x v l (vc-print-log)は、*vc-change-log*という名前のバッファーを表示して、誰が変更したのか、その日時、各変更のログエントリー(これらは*vc-log*バッファーを通じて入力したログエントリーと同じです。Log Entryバッファーの機能を参照してください)を含む、カレントファイルに行われた変更の履歴を表示します。現在visitしているファイルのリビジョンに、ポイントが配されます。プレフィクス引数を指定した場合、このコマンドはポイントが配されるリビジョンと、表示するリビジョンの最大数の入力を求めます。

VC Directoryバッファー(VC Directoryモードを参照してください)、またはDiredバッファー(Dired (ディレクトリーエディター)を参照してください)からC-x v lを呼び出した場合、カレント行にリストされたファイルにたいして適用されます。

C-x v L (vc-print-root-log)はバージョンコントロールされたディレクトリーツリー全体の履歴を示す*vc-change-log*バッファーを表示します(RCS、SCCS、CVS、SRCはこの機能をサポートしない)。コマンドにプレフィクス引数を与えると表示するリビジョンの最大数の入力を求めます。プレフィクス数引数は入力を求めることなくリビジョンの最大数を指定します。C-1 C-x v LC-u 1 C-x v Lのようにプレフィクス数引数が1ならコマンドはリビジョンIDの入力を求めて、そのリビジョンで導入された変更(diff)とともにリビジョンのログエントリーを表示します(RCSやCVSのように機能に劣るバージョンコントロールシステムにはdiffとともにリビジョンログを表示するコマンドがなく、このコマンドはそれらにたいしてはログエントリーだけを表示するので、以下のdDをタイプしてdiffを要求できる)。

C-x v Lでは履歴は簡略化された形式で表示され、通常は各ログエントリーの最初の行だけが表示されます。しかし*vc-change-log*バッファーでRET (log-view-toggle-entry-display)とタイプすると、ポイント位置のリビジョンのログエントリー全体を表示します。2回目のRETで、再びそれを隠します。

分散型のバージョンコントロールシステムでは、C-x v I (vc-log-incoming)コマンドは、次回にバージョンコントロールのpullコマンドを実行するときに、他のレポジトリから受け取る新しいリビジョンにより適用される変更をログバッファーに表示します(ブランチへ/からの変更のpull/pushを参照)。ここで他のレポジトリとは、バージョンコントロールシステムで定義される、変更をpullするデフォルトのレポジトリのことです。プレフィクス引数を指定すると、vc-log-incomingは特定のレポジトリの入力を求めます。同様に、C-x v O (vc-log-outgoing)は、次回にpushコマンドを実行するときに、他のレポジトリに送る変更を表示します。プレフィクス引数を指定すると、送信先となる特定のレポジトリの入力を求めます。

*vc-change-log*バッファーでは、リビジョンのログまたはファイル間の移動や、過去のリビジョン(古いリビジョンの調査と比較を参照してください)を調べたり比較するために、以下のキーを使うことができます:

p

前のリビジョンエントリーに移動します(logバッファーのリビジョンエントリーは通常、日時の降順になっているので、前のリビジョンアイテムは通常、もっと新しいリビジョンに対応します)。数引数は繰り返し回数です。

n

次のリビジョンエントリーに移動します。数引数は繰り返し回数です。

P

複数ファイルのVCファイルセットを表示していれば前のファイルのログに移動、それ以外は単にログの先頭に移動します。数引数は繰り返し回数です。

N

複数ファイルのVCファイルセットを表示していれば次のファイルのログに移動します。数引数は繰り返し回数です。

a

カレント行のリビジョンに注釈を付けます(古いリビジョンの調査と比較を参照してください)。

e

ポイント位置に表示された変更コメントを修正します。すべてのバージョンコントロールシステムが、変更コメントの修正をサポートするわけではないことに注意してください。

f

カレント行に示されたリビジョンをvisitします。

d

ポイント位置のリビジョンと、次に古いリビジョンとの間で、特定のファイルにたいするdiffを表示します。

D

ポイント位置のリビジョンと、次に古いリビジョンとの間で、変更セットのdiffを表示します。これは、そのリビジョンですべてのファイルにたいして行われた変更を表示します。

RET

簡略形式のlogバッファー(たとえばC-x v Lで作成されたバッファー)で、ポイント位置のログエントリーにたいして、完全なログエントリーの表示・非表示を切り替えます。

多くのログエントリーを取得するには時間がかかるので、*vc-change-log*バッファーは、デフォルトで2000を超えるリビジョンは表示しません。変数vc-log-show-limitはこの制限を指定します。この値を0にセットすると、制限が削除されます。既存の*vc-change-log*で、バッファーの最後のボタン‘Show 2X entries’または‘Show unlimited entries’をクリックして、表示するリビジョン数を増やすこともできます。しかしRCS、SCCS、CVS、SRCはこの機能をサポートしません。

変更履歴を確認する有用な変種はコマンドvc-region-history (デフォルトではC-x v hにバインド)により提供されます。これはカレントバッファーのファイルのポイントとマーク(マークとリージョンを参照)の間にあるリージョンに行われた変更の履歴を*VC-history*バッファーに表示します。変更履歴にはコミットログメッセージ(commit log messages)と変更自体のDiff形式も含まれます。

カレントバッファーの興味がある変更にたいしてリージョンをマークした後に、このコマンドを呼び出します。このコマンドがポップアップする*VC-history*バッファーでは、上述した*vc-change-log*バッファーで利用可能なコマンドすべてと、Diffモード(Diffモードを参照)で定義されたコマンドも使用できます。

このコマンドは現在のところGitとMercurial(hg)だけで利用可能です。

コマンドvc-log-searchにより変更ログのパターンによる検索が可能になります。これはパターン(正規表現)の入力を求めて、パターンにマッチするログメッセージをもつ変更履歴内のすべてのエントリーを表示します。プレフィクス引数とともに呼び出された際には、コマンドはこの目的にたいして実行する固有のVCSシェルコマンドの入力も求めます。