Version Control with Subversion, 2nd Edition
by C. Michael Pilato, Ben Collins-Sussman, Brian W. Fitzpatrick
Using External Editors
The most obvious way to get data into Subversion is through the
addition of files to version control, committing changes to those files,
and so on. But other pieces of information besides merely versioned file
data live in your Subversion repository. Some of these bits of
information—commit log messages, lock comments, and some property
values—tend to be textual in nature and are provided explicitly by users.
Most of this information can be provided to the Subversion command-line
client using the --message
(-m) and --file (-F)
options with the appropriate subcommands.
Each of these options has its pros and cons. For example, when
performing a commit, --file (-F) works
well if you’ve already prepared a text file that holds your commit log
message. If you didn’t, though, you can use --message
(-m) to provide a log message on the command line.
Unfortunately, it can be tricky to compose anything more than a simple
one-line message on the command line. Users want more
flexibility—multiline, free-form log message editing on demand.
Subversion supports this by allowing you to specify an external text editor that it will launch as necessary to give you a more powerful input mechanism for this textual metadata. There are several ways to tell Subversion which editor you’d like use. Subversion checks the following things, in the order specified, when it wants to launch such an editor:
--editor-cmdcommand-line optionSVN_EDITORenvironment variableeditor-cmdruntime configuration ...