Emacs 可以通过两种方式创建备份文件:
第一种方式(重命名)为默认方式。
若变量 backup-by-copying 非 nil,则表示使用第二种方式,
即复制原文件并用缓冲区新内容覆盖它。若变量 file-precious-flag 非 nil,
也会产生同样效果(这是其主要作用之外的附加行为)。See 保存缓冲区。
若该变量非 nil,Emacs 将始终通过复制方式创建备份文件。默认值为 nil。
下面三个变量在非 nil 时,会在特定场景下使用第二种备份方式。
对于不属于这些特殊场景的文件,它们不会产生任何影响。
若该变量非 nil,Emacs 对拥有多个名称(硬链接)的文件采用复制方式创建备份。默认值为 nil。
该变量仅在 backup-by-copying 为 nil 时有效,
因为只要后者非 nil,就会始终使用复制方式。
若该变量非 nil(默认值),当重命名会改变文件的所有者或用户组时,
Emacs 将采用复制方式创建备份。
若重命名不会改变文件所有者或用户组(即文件所有者为当前用户, 且用户组与该用户在此目录新建文件的默认用户组一致),则该变量无效。
该变量仅在 backup-by-copying 为 nil 时有效。
若该变量非 nil,其行为与 backup-by-copying-when-mismatch 相同,
但仅对特定用户 ID 和组 ID 生效:即小于或等于某个数值的 ID。
该变量的值即为这个数值。
例如,若将 backup-by-copying-when-privileged-mismatch 设为 0,
则仅在必要时为超级用户与 0 号用户组的文件使用复制备份,以避免文件所有者发生变化。
默认值为 200。