On Friday, August 12, 2011, Lukas Fleischer <archlinux@cryptocrack.de> wrote:
> Generate a message template when omitting the commit message (includes
> the same subject line that is used if a commit message is specified).
>
> Also, use two newlines to separate the subject line from the message
> body as it looks much clearer that way.
>
> Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
> ---
> I fully agree that this is a bit hacky. I really dislike the current
> behaviour of adding a header if a message is specified on the command
> line and not adding anything if you use an editor.
This gets a +1 from me (untested), it is crazy SVN makes this so hard to do.
>
> If anyone can come up with a better idea - suggestions welcome!
>
> commitpkg | 21 ++++++++++++++++++---
> 1 files changed, 18 insertions(+), 3 deletions(-)
>
> diff --git a/commitpkg b/commitpkg
> index 07b0994..be40344 100755
> --- a/commitpkg
> +++ b/commitpkg
> @@ -109,11 +109,26 @@ if [ "$1" = "-a" ]; then
> fi
>
> echo -n 'committing changes to trunk...'
> +msgtemplate="upgpkg: $pkgbase $(get_full_version ${epoch:-0} $pkgver $pkgrel)
> +
> +"
> if [ -n "$1" ]; then
> - svn commit -q -m "upgpkg: $pkgbase $(get_full_version ${epoch:-0} $pkgver $pkgrel)
> -$1" || abort
> + svn commit -q -m "${msgtemplate}${1}" || abort
> else
> - svn commit -q || abort
> + msgfile="$(mktemp)"
> + echo "$msgtemplate" > "$msgfile"
> + if [ -n "$SVN_EDITOR" ]; then
> + $SVN_EDITOR "$msgfile"
> + elif [ -n "$VISUAL" ]; then
> + $VISUAL "$msgfile"
> + elif [ -n "$EDITOR" ]; then
> + $EDITOR "$msgfile"
> + else
> + vi "$msgfile"
> + fi
> + [ -s "$msgfile" ] || abort
> + svn commit -q -F "$msgfile" || abort
> + unlink "$msgfile"
> fi
> echo 'done'
>
> --
> 1.7.6
>
>