1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-30 04:10:54 -08:00

Compute a better commit message for merges

Problem reported by David Engster in:
http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01270.html
* admin/gitmerge.el (gitmerge-commit-message):
Truncate the computed commit message to at most 72 characters per line.
(gitmerge-maybe-resume): Don’t use "-" as the commit message for
merges; use the computed commit message instead.
This commit is contained in:
Paul Eggert 2016-03-22 16:42:28 -07:00
parent 4fab26ba5a
commit ddd9111a90

View file

@ -331,6 +331,10 @@ is nil, only the single commit BEG is merged."
(if end (list (concat beg "~.." end))
`("-1" ,beg)))
(insert "\n")
;; Truncate to 72 chars so that the resulting ChangeLog line fits in 80.
(goto-char (point-min))
(while (re-search-forward "^\\(.\\{69\\}\\).\\{4,\\}" nil t)
(replace-match "\\1..."))
(buffer-string)))
(defun gitmerge-apply (missing from)
@ -432,14 +436,8 @@ If so, add no longer conflicted files and commit."
(when mergehead
(with-current-buffer (get-buffer-create gitmerge-output-buffer)
(erase-buffer)
;; FIXME: We add "-m-" because the default commit message
;; apparently tickles our commit hook:
;; Line longer than 78 characters in commit message
;; Line longer than 78 characters in commit message
;; Line longer than 78 characters in commit message
;; Commit aborted; please see the file CONTRIBUTE
(unless (zerop (call-process "git" nil t nil
"commit" "--no-edit" "-m-"))
"commit" "--no-edit"))
(error "Git error during merge - fix it manually"))))
;; Successfully resumed.
t))))