Subversion setup and configuration: Difference between revisions
(New page: ==Enabling edition of log comments== <code> set userName=%3 set propertyName=%4 set action=%5 :: Only allow the log message to be changed, but not author, etc. if /I not "%propertyName%" ...) |
No edit summary |
||
(8 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{Source Control}} | |||
==Enabling edition of log comments== | ==Enabling edition of log comments== | ||
< | Copy the code below into a text file and name it pre-revprop-change.bat and save it in the /hooks subdirectory for your repository. | ||
<source lang="dos"> | |||
@ECHO OFF | |||
:: Set all parameters. Even though most are not used, in case you want to add | |||
:: changes that allow, for example, editing of the author or addition of log messages. | |||
set repository=%1 | |||
set revision=%2 | |||
set userName=%3 | set userName=%3 | ||
set propertyName=%4 | set propertyName=%4 | ||
set action=%5 | set action=%5 | ||
:: Only allow the log message to be changed, but not author, etc. | :: Only allow the log message to be changed, but not author, etc. | ||
Line 34: | Line 43: | ||
:ERROR_EXIT | :ERROR_EXIT | ||
exit /b 1 | exit /b 1 | ||
</ | </source> | ||
==How to update Subversion the nicest way?== | |||
Typically you install the lastest version of subversion, then run "svnadmin upgrade" (which often does nothing at all - repository format upgrades are rare). | |||
You should, of course, take a backup first. | |||
The upgrade notes are part of the [http://subversion.apache.org/ release notes]. |
Latest revision as of 12:54, 7 December 2016
Enabling edition of log comments
Copy the code below into a text file and name it pre-revprop-change.bat and save it in the /hooks subdirectory for your repository.
<source lang="dos"> @ECHO OFF
- Set all parameters. Even though most are not used, in case you want to add
- changes that allow, for example, editing of the author or addition of log messages.
set repository=%1 set revision=%2 set userName=%3 set propertyName=%4 set action=%5
- Only allow the log message to be changed, but not author, etc.
if /I not "%propertyName%" == "svn:log" goto ERROR_PROPNAME
- Only allow modification of a log message, not addition or deletion.
if /I not "%action%" == "M" goto ERROR_ACTION
- Make sure that the new svn:log message is not empty.
set bIsEmpty=true for /f "tokens=*" %%g in ('find /V ""') do ( set bIsEmpty=false ) if "%bIsEmpty%" == "true" goto ERROR_EMPTY
goto :eof
- ERROR_EMPTY
echo Empty svn:log messages are not allowed. >&2 goto ERROR_EXIT
- ERROR_PROPNAME
echo Only changes to svn:log messages are allowed. >&2 goto ERROR_EXIT
- ERROR_ACTION
echo Only modifications to svn:log revision properties are allowed. >&2 goto ERROR_EXIT
- ERROR_EXIT
exit /b 1 </source>
How to update Subversion the nicest way?
Typically you install the lastest version of subversion, then run "svnadmin upgrade" (which often does nothing at all - repository format upgrades are rare).
You should, of course, take a backup first.
The upgrade notes are part of the release notes.