Commit 6aebd58c authored by Dan Nicolaescu's avatar Dan Nicolaescu
Browse files

Add --author support to git commit.

* vc-git.el (vc-git-checkin): Pass extra-args to the commit command.
(vc-git-log-edit-mode): New minor mode.
(log-edit-mode, log-edit-extra-flags, log-edit-mode): New
declarations.
parent f6d90772
......@@ -107,6 +107,10 @@ choose a color via list-colors-display.
Author: NAME
line will add "--author NAME" to the "bzr commit" command.
**** For Git, adding an
Author: NAME
line will add "--author NAME" to the "git commit" command.
**** For Hg, adding an
Author: NAME
line will add "--user NAME" to the "hg commit" command.
......
2010-04-09 Dan Nicolaescu <dann@ics.uci.edu>
Add --author support to git commit.
* vc-git.el (vc-git-checkin): Pass extra-args to the commit command.
(vc-git-log-edit-mode): New minor mode.
(log-edit-mode, log-edit-extra-flags, log-edit-mode): New
declarations.
2010-04-09 Eric Raymond <esr@snark.thyrsus.com>
* vc-hooks.el, vc-git.el: Improve documentation comments.
......
......@@ -548,10 +548,10 @@ or an empty string if none."
(vc-git-command nil 0 file "rm" "-f" "--cached" "--"))
(defun vc-git-checkin (files rev comment &optional extra-args-ignored)
(defun vc-git-checkin (files rev comment &optional extra-args)
(let ((coding-system-for-write git-commits-coding-system))
(vc-git-command nil 0 files "commit"
"-m" comment "--only" "--")))
(apply 'vc-git-command nil 0 files
(nconc (list "commit" "-m" comment) extra-args (list "--only" "--")))))
(defun vc-git-find-revision (file rev buffer)
(let* (process-file-side-effects
......@@ -790,6 +790,21 @@ or BRANCH^ (where \"^\" can be repeated)."
(progn (forward-line 1) (1- (point)))))))))
(or (vc-git-symbolic-commit next-rev) next-rev)))
(declare-function log-edit-mode "log-edit" ())
(defvar log-edit-extra-flags)
(defvar log-edit-before-checkin-process)
(define-derived-mode vc-git-log-edit-mode log-edit-mode "Git-log-edit"
"Mode for editing Git commit logs.
If a line like:
Author: NAME
is present in the log, it is removed, and
--author=NAME
is passed to the git commit command."
(set (make-local-variable 'log-edit-extra-flags) nil)
(set (make-local-variable 'log-edit-before-checkin-process)
'(("^Author:[ \t]+\\(.*\\)[ \t]*$" . (list "--author" (match-string 1))))))
(defun vc-git-delete-file (file)
(vc-git-command nil 0 file "rm" "-f" "--"))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment