Previous: Advanced C-x v v, Up: Basic VC Editing
When you check in changes, C-x v v first reads a log entry. It pops up a buffer called ‘*VC-Log*’ for you to enter the log entry.
Sometimes the ‘*VC-Log*’ buffer contains default text when you enter it, typically the last log message entered. If it does, mark and point are set around the entire contents of the buffer so that it is easy to kill the contents of the buffer with C-w.
If you work by writing entries in the ChangeLog (see Change Log) and then commit the change under revision control, you can generate the Log Edit text from the ChangeLog using C-c C-a (log-edit-insert-changelog). This looks for entries for the file(s) concerned in the top entry in the ChangeLog and uses those paragraphs as the log text. This text is only inserted if the top entry was made under your user name on the current date. See Change Logs and VC, for the opposite way of working—generating ChangeLog entries from the revision control log.
In the ‘*VC-Log*’ buffer, C-c C-f (M-x log-edit-show-files) shows the list of files to be committed in case you need to check that. (This can be a list of more than one file if you use VC Dired mode or PCL-CVS. See VC Dired Mode, and About PCL-CVS.)
When you have finished editing the log message, type C-c C-c to exit the buffer and commit the change.
To abort check-in, just don't type C-c C-c in that buffer. You can switch buffers and do other editing. As long as you don't try to check in another file, the entry you were editing remains in the ‘*VC-Log*’ buffer, and you can go back to that buffer at any time to complete the check-in.
If you change several source files for the same reason, it is often convenient to specify the same log entry for many of the files. To do this, use the history of previous log entries. The commands M-n, M-p, M-s and M-r for doing this work just like the minibuffer history commands (except that these versions are used outside the minibuffer).
Each time you check in a file, the log entry buffer is put into VC Log
mode, which involves running two hooks: text-mode-hook
and
vc-log-mode-hook
. See Hooks.