Previous: , Up: バックアップファイル   [Contents][Index]


20.3.2.3 コピー vs. リネーム

バックアップファイルは、古いファイルをコピーまたはリネームすることで作ることができます。コピーとリネームは、古いファイルが複数の名前をもつ場合(ハードリンクされている場合)に、異なる効果をもちます。古いファイルがバックアップファイルにリネームされた場合、ハードリンクされた別の名前で参照されるファイルは、バックアップファイルとなります。かわりに古いファイルをコピーすると、ハードリンクされた別の名前で参照されるファイルは、編集中のファイルのままで、それらの名前でアクセスする内容は新しい内容となります。

バックアップファイルを作る方法は、編集中のファイルの所有者とグループにも影響します。コピーが使われた場合、それらは変化しません。リネームが使われた場合、そのユーザーがファイルの所有者となり、ファイルのグループはデフォルト(オペレーティングシステムごとにグループのデフォルトは異なります)のグループになります。

リネームとコピーの選択は、以下の変数により行われます:

ファイルがバージョンコントロールシステムで管理されている場合(バージョンコントロールを参照)、通常、Emacsは普通の方法でそのファイルのバックアップを作りません。しかしコミット(チェックインとも呼ばれる。バージョンコントロールの概念を参照されたい)は、バックアップを作るのと似たところがあります。これらの操作は通常ハードリンクをこわし、同じファイルにたいする別のファイル名でのvisitを切断します。Emacsにできることはありません。バージョンコントロールシステムがこれを行うのです。

一部のファイルストレージサービス(FSS)はファイルバージョニング(file versioning)をサポートしています。これらのFSSではファイルにたいする以前の履歴を記録して、以前のバージョンにリバートすることができます。Emacsでこの種のサービスによってホストされたファイルを編集する際にこれらの操作を可能にしたい場合には、backup-by-copyingを非nil値にカスタマイズしてください。

Copying the old file for backup is also useful when editing precious files, because it makes sure the old file keeps its name if something fails between the backup and the saving of your edits. Alternatively, you can customize file-precious-flag to a non-nil value, which implies backups by copying and also protects against I/O errors while saving your edits.

This page has generated for branch:work/emacs-30_11e7ae3964e192b0e4bcc437a04278ee727e720b, commit:b3c5971e7766c1bed458d4837c2a2eafc0760e6a to check Japanese translation.