# HG changeset patch # User Dan Nicolaescu # Date 1275731782 25200 # Node ID 3e41dbf56aa28addefbd8a88c61fc4a46b2b9014 # Parent d9257436d2b1e54e3442448160d2f4cdaec8804a 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. diff -r d9257436d2b1 -r 3e41dbf56aa2 etc/NEWS --- a/etc/NEWS Sat Jun 05 02:41:32 2010 +0200 +++ b/etc/NEWS Sat Jun 05 02:56:22 2010 -0700 @@ -167,6 +167,8 @@ **** 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. diff -r d9257436d2b1 -r 3e41dbf56aa2 lisp/ChangeLog --- a/lisp/ChangeLog Sat Jun 05 02:41:32 2010 +0200 +++ b/lisp/ChangeLog Sat Jun 05 02:56:22 2010 -0700 @@ -1,3 +1,12 @@ +2010-06-05 Dan Nicolaescu + + 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 * simple.el (kill-new): Fix logic of kill-do-not-save-duplicates. diff -r d9257436d2b1 -r 3e41dbf56aa2 lisp/vc-git.el --- a/lisp/vc-git.el Sat Jun 05 02:41:32 2010 +0200 +++ b/lisp/vc-git.el Sat Jun 05 02:56:22 2010 -0700 @@ -606,31 +606,15 @@ (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 @@ 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 @@ (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.