18.3.2.1 Single or Numbered Backups
When Emacs makes a backup file, its name is normally constructed by
appending ‘ ~’ to the file name being edited; thus, the backup
file for eval.c would be eval.c~.
If access control stops Emacs from writing backup files under the
usual names, it writes the backup file as ~/.emacs.d/%backup%~.
Only one such file can exist, so only the most recently made such
backup is available.
Emacs can also make numbered backup files. Numbered backup
file names contain ‘ .~’, the number, and another ‘ ~’ after
the original file name. Thus, the backup files of eval.c would
be called eval.c.~1~, eval.c.~2~, and so on, all the way
through names like eval.c.~259~ and beyond.
The variable version-control determines whether to make
single backup files or multiple numbered backup files. Its possible
values are:
nil
Make numbered backups for files that have numbered backups already. Otherwise, make single backups. This is the default.
t
Make numbered backups.
never
Never make numbered backups; always make single backups.
The usual way to set this variable is globally, through your init file
or the customization buffer. However, you can set
version-control locally in an individual buffer to control the
making of backups for that buffer’s file (see Local Variables). You can
have Emacs set version-control locally whenever you visit a
given file (see Local Variables in Files). Some modes, such as Rmail mode,
set this variable.
If you set the environment variable VERSION_CONTROL, to tell
various GNU utilities what to do with backup files, Emacs also obeys the
environment variable by setting the Lisp variable version-control
accordingly at startup. If the environment variable’s value is ‘ t’
or ‘ numbered’, then version-control becomes t; if the
value is ‘ nil’ or ‘ existing’, then version-control
becomes nil; if it is ‘ never’ or ‘ simple’, then
version-control becomes never.
If you set the variable make-backup-file-name-function to
a suitable Lisp function, you can override the usual way Emacs
constructs backup file names.