vc-log-incoming/vc-log-outgoing fixes for Git.

* lisp/vc-git.el (vc-git-log-view-mode): Fix font lock for
incoming/outgoing logs.
(vc-git-log-outgoing, vc-git-log-incoming): Use @{upstream}
instead of vc-git-compute-remote.
(vc-git-compute-remote): Remove.
This commit is contained in:
Dan Nicolaescu 2010-06-05 02:56:22 -07:00
parent 409f291913
commit eccdfe5fd1
3 changed files with 17 additions and 22 deletions

View file

@ -167,6 +167,8 @@ read a file name from the minibuffer instead of using buffer-file-name.
**** vc-log-incoming for Git runs "git fetch" so that the necessary
data is available locally.
**** vc-log-incoming and vc-log-outgoing for Git require version 1.7 (or newer).
*** New key bindings: C-x v I and C-x v O bound to vc-log-incoming and
vc-log-outgoing, respectively.

View file

@ -1,3 +1,12 @@
2010-06-05 Dan Nicolaescu <dann@ics.uci.edu>
vc-log-incoming/vc-log-outgoing fixes for Git.
* vc-git.el (vc-git-log-view-mode): Fix font lock for
incoming/outgoing logs.
(vc-git-log-outgoing, vc-git-log-incoming): Use @{upstream}
instead of vc-git-compute-remote.
(vc-git-compute-remote): Remove.
2010-06-04 Juri Linkov <juri@jurta.org>
* simple.el (kill-new): Fix logic of kill-do-not-save-duplicates.

View file

@ -606,31 +606,15 @@ for the --graph option."
(when start-revision (list start-revision))
'("--")))))))
(defun vc-git-compute-remote ()
(let ((str (with-output-to-string
(with-current-buffer standard-output
(vc-git--out-ok "symbolic-ref" "HEAD"))))
branch remote)
(if (string-match "^\\(refs/heads/\\)?\\(.+\\)$" str)
(progn
(setq branch (match-string 2 str))
(setq remote
(with-output-to-string
(with-current-buffer standard-output
(vc-git--out-ok "config"
(concat "branch." branch ".remote")))))
(when (string-match "\\([^\n]+\\)" remote)
(setq remote (match-string 1 remote)))))))
(defun vc-git-log-outgoing (buffer remote-location)
(interactive)
(vc-git-command
buffer 0 nil
"log"
"--no-color" "--graph" "--decorate" "--date=short"
"--pretty=tformat:%d%h %ad %s" "--abbrev-commit"
"--pretty=tformat:%d%h %ad %s" "--abbrev-commit"
(concat (if (string= remote-location "")
(vc-git-compute-remote)
"@{upstream}"
remote-location)
"..HEAD")))
@ -641,9 +625,9 @@ for the --graph option."
buffer 0 nil
"log"
"--no-color" "--graph" "--decorate" "--date=short"
"--pretty=tformat:%d%h %ad %s" "--abbrev-commit"
"--pretty=tformat:%d%h %ad %s" "--abbrev-commit"
(concat "HEAD.." (if (string= remote-location "")
(vc-git-compute-remote)
"@{upstream}"
remote-location))))
(defvar log-view-message-re)
@ -657,11 +641,11 @@ for the --graph option."
(set (make-local-variable 'log-view-file-re) "\\`a\\`")
(set (make-local-variable 'log-view-per-file-logs) nil)
(set (make-local-variable 'log-view-message-re)
(if (eq vc-log-view-type 'short)
(if (not (eq vc-log-view-type 'long))
"^\\(?:[*/\\| ]+ \\)?\\(?: ([^)]+)\\)?\\([0-9a-z]+\\) \\([-a-z0-9]+\\) \\(.*\\)"
"^commit *\\([0-9a-z]+\\)"))
(set (make-local-variable 'log-view-font-lock-keywords)
(if (eq vc-log-view-type 'short)
(if (not (eq vc-log-view-type 'long))
'(
;; Same as log-view-message-re, except that we don't
;; want the shy group for the tag name.