Sometimes a user will have an error in her log message (a
misspelling or some misinformation, perhaps). If the repository is
configured (using the
pre-revprop-change hook; see Implementing Repository Hooks) to accept changes to this log
message after the commit is finished, the user can “fix”
her log message remotely using svn propset (see
“svn propset” in Chapter 9). However, because of the potential to lose
information forever, Subversion repositories are not, by default,
configured to allow changes to unversioned properties—except by an
If a log message needs to be changed by an administrator, this can
be done using svnadmin setlog.
This command changes the log message (the
svn:log property) on a given revision of a
repository, reading the new value from a provided file:
$ echo "Here is the new, correct log message" > newlog.txt $ svnadmin setlog myrepos newlog.txt -r 388
The svnadmin setlog command, by
default, is still bound by the same protections against modifying
unversioned properties as a remote client—the
post-revprop-change hooks are still triggered
and therefore must be set up to accept changes of this nature. But an
administrator can get around these protections by passing the
--bypass-hooks option to
the svnadmin setlog command.
Remember, though, that by bypassing the hooks, you are likely avoiding such things as email notifications of property changes, backup systems that track unversioned property changes, ...