GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/emacs/Version-Control.html ・ emacs-doc.conao3.com

30.1 バージョン管理

バージョン管理システムとは、ソースファイルの複数のバージョンを記録でき、各バージョンの作成時刻や作成者、変更内容の説明などの情報を保存できるプログラムのことです。

Emacsのバージョン管理インターフェースはVCと呼ばれます。VCコマンドはいくつかの異なるバージョン管理システムに対応しており、現在はBazaar、CVS、Git、Mercurial、RCS、SRC、SCCS/CSSC、およびSubversionをサポートしています。このうち、GNUプロジェクトはCVS、RCS、およびBazaarを配布しています。

バージョン管理システムで管理されているファイルにアクセスすると、自動的にVCが有効になります。VCを完全に無効にするには、カスタマイズ可能な変数 vc-handled-backends を nil に設定してください(VCのカスタマイズを参照)。

現在のバッファで参照しているファイルのVC状態情報を更新するには、vc-refresh-stateコマンドを使用します。このコマンドは、Emacs外(例えばシェルプロンプトなど)でバージョン管理コマンドを実行する場合や、バッファのファイルを別のバージョン管理システムに移行する場合、あるいはバージョン管理から完全に削除する場合に便利です。

VCはDiredバッファ(Dired, the Directory Editorを参照)でも自動的に有効になり、VCSで管理されているファイルを含むディレクトリが表示されます。本節で説明するすべてのVCコマンドは、VC管理下のファイルを含むディレクトリが表示されている任意のDiredバッファから呼び出すことができます。Diredバッファ内でマークされているファイル(Dired Marks vs. Flagsを参照)は、現在のファイルセットに属するものとみなされ、VCコマンドはこのファイルセット内のファイルに対して動作します。これにより、VCの状態に関わらず、任意のファイルを含むVCファイルセットを構築できます。(DiredバッファからVCコマンドを呼び出した際にマークされているファイルがない場合、バッファの現在の行に表示されているファイルがファイルセット内の唯一のファイルとみなされます。)