On most operating systems, rewriting a file automatically destroys all record of what the file used to contain. Thus, saving a file from Emacs throws away the old contents of the file—or it would, except that Emacs carefully copies the old contents to another file, called the backup file, before actually saving.
Emacs makes a backup for a file only the first time the file is saved from a buffer. No matter how many times you subsequently save the file, its backup remains unchanged. However, if you kill the buffer and then visit the file again, a new backup file will be made.
For most files, the variable
whether to make backup files. On most operating systems, its default
t, so that Emacs does write backup files.
For files managed by a version control system (see Version Control), the variable
vc-make-backup-files determines whether
to make backup files. By default it is
nil, since backup files
are redundant when you store all the previous versions in a version
See General VC Options.
At your option, Emacs can keep either a single backup for each file, or make a series of numbered backup files for each file that you edit. See Backup Names.
The default value of the
prevents backup files being written for files in the directories used
for temporary files, specified by
You can explicitly tell Emacs to make another backup file from a buffer, even though that buffer has been saved before. If you save the buffer with C-u C-x C-s, the version thus saved will be made into a backup file if you save the buffer again. C-u C-u C-x C-s saves the buffer, but first makes the previous file contents into a new backup file. C-u C-u C-u C-x C-s does both things: it makes a backup from the previous contents, and arranges to make another from the newly saved contents if you save again.