1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-01 08:17:38 +00:00

* lisp/vc/vc-git.el (vc-git-checkin): Make it possible to commit a merge.

This commit is contained in:
Stefan Monnier 2013-09-03 14:28:06 -04:00
parent 14b511d4e5
commit 724f5e41b6
2 changed files with 12 additions and 3 deletions

View File

@ -1,5 +1,7 @@
2013-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
* vc/vc-git.el (vc-git-checkin): Make it possible to commit a merge.
* emacs-lisp/package.el (package-activate-1): Don't let a missing
<pkg>-autoloads.el file stop us.

View File

@ -649,11 +649,18 @@ If toggling on, also insert its message into the buffer."
It is based on `log-edit-mode', and has Git-specific extensions.")
(defun vc-git-checkin (files _rev comment)
(let ((coding-system-for-write vc-git-commits-coding-system))
(let* ((file1 (or (car files) default-directory))
(root (vc-git-root file1))
(default-directory (expand-file-name root))
(only (or (cdr files)
(not (equal root (abbreviate-file-name file1)))))
(coding-system-for-write vc-git-commits-coding-system))
(cl-flet ((boolean-arg-fn
(argument)
(lambda (value) (when (equal value "yes") (list argument)))))
(apply 'vc-git-command nil 0 files
;; When operating on the whole tree, better pass nil than ".", since "."
;; fails when we're committing a merge.
(apply 'vc-git-command nil 0 (if only files)
(nconc (list "commit" "-m")
(log-edit-extract-headers
`(("Author" . "--author")
@ -661,7 +668,7 @@ It is based on `log-edit-mode', and has Git-specific extensions.")
("Amend" . ,(boolean-arg-fn "--amend"))
("Sign-Off" . ,(boolean-arg-fn "--signoff")))
comment)
(list "--only" "--"))))))
(if only (list "--only" "--")))))))
(defun vc-git-find-revision (file rev buffer)
(let* (process-file-side-effects