From 19f8e0231d1754658e712e21af32f2f4e04bdfdf Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sun, 29 Mar 2015 13:03:55 -0700 Subject: [PATCH] Fix 'commit-msg' to cite 'CONTRIBUTE' As suggested in: http://lists.gnu.org/archive/html/emacs-devel/2015-03/msg00947.html Also, have the two files match better. * CONTRIBUTE: Match what's in build-aux/git-hooks/commit-msg. * build-aux/git-hooks/commit-msg: Mention 'CONTRIBUTE'. --- CONTRIBUTE | 16 +++++++++++----- ChangeLog | 9 +++++++++ build-aux/git-hooks/commit-msg | 16 ++++++++-------- 3 files changed, 28 insertions(+), 13 deletions(-) diff --git a/CONTRIBUTE b/CONTRIBUTE index 7c40227..c723143 100644 --- a/CONTRIBUTE +++ b/CONTRIBUTE @@ -37,16 +37,17 @@ specify the actual author; the committer defaults to you. When using git, commit messages should use ChangeLog format, with the following modifications: -- Add a single short line explaining the change, then an empty line, - then unindented ChangeLog entries. +- Start with a single unindented summary line explaining the change, + then an empty line, then unindented ChangeLog entries. You can use various Emacs functions to ease this process; see (info "(emacs)Change Log Commands") or http://www.gnu.org/software/emacs/manual/html_node/emacs/Change-Log-Commands.html. -- The summary line is limited to 72 characters (enforced by a commit - hook). If you have trouble making that a good summary, add a - paragraph below it, before the individual file descriptions. +- Limit lines in commit messages to 78 characters, unless they consist + of a single word of at most 140 characters. If you have trouble + fitting the summary into 78 characters, add a summarizing paragraph + below the empty line and before the individual file descriptions. - If only a single file is changed, the summary line can be the normal file first line (starting with the asterisk). Then there is no @@ -57,6 +58,11 @@ following modifications: the rationale for a change; that can be done in the commit message between the summary line and the file entries. +- Commit messages should contain only printable UTF-8 characters. + +- Commit messages should not contained the "Signed-off-by:" lines that + are used in some other projects. + ** ChangeLog notes - Emacs generally follows the GNU coding standards when it comes to diff --git a/ChangeLog b/ChangeLog index a489ab9..f550c6d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2015-03-29 Paul Eggert + + Fix 'commit-msg' to cite 'CONTRIBUTE' + As suggested in: + http://lists.gnu.org/archive/html/emacs-devel/2015-03/msg00947.html + Also, have the two files match better. + * CONTRIBUTE: Match what's in build-aux/git-hooks/commit-msg. + * build-aux/git-hooks/commit-msg: Mention 'CONTRIBUTE'. + 2015-03-23 Andreas Schwab * configure.ac: Fix jpeg version check to work with gcc >= 5. diff --git a/build-aux/git-hooks/commit-msg b/build-aux/git-hooks/commit-msg index 31df5ce..13a0535 100755 --- a/build-aux/git-hooks/commit-msg +++ b/build-aux/git-hooks/commit-msg @@ -63,7 +63,7 @@ exec $awk ' /^#/ { next } !/^.*$/ { - print "Invalid character (not UTF-8) in commit message" + print "Invalid character (not UTF-8) in commit message; see 'CONTRIBUTE'" status = 1 } @@ -77,13 +77,13 @@ exec $awk ' sub(/^squash! /, "") if ($0 ~ "^" space) { - print "White space at start of commit message'\''s first line" + print "White space at start of commit message'\''s first line; see 'CONTRIBUTE'" status = 1 } } nlines == 2 && $0 ~ non_space { - print "Nonempty second line in commit message" + print "Nonempty second line in commit message; see 'CONTRIBUTE'" status = 1 } @@ -97,28 +97,28 @@ exec $awk ' } 78 < length && $0 ~ space { - print "Line longer than 78 characters in commit message" + print "Line longer than 78 characters in commit message; see 'CONTRIBUTE'" status = 1 } 140 < length { - print "Word longer than 140 characters in commit message" + print "Word longer than 140 characters in commit message; see 'CONTRIBUTE'" status = 1 } /^Signed-off-by: / { - print "'\''Signed-off-by:'\'' in commit message" + print "'\''Signed-off-by:'\'' in commit message; see 'CONTRIBUTE'" status = 1 } $0 ~ non_print { - print "Unprintable character in commit message" + print "Unprintable character in commit message; see 'CONTRIBUTE'" status = 1 } END { if (nlines == 0) { - print "Empty commit message" + print "Empty commit message; see 'CONTRIBUTE'" status = 1 } exit status -- 2.1.0