Re: [PATCH] vc-git.el: Switch to using git-blame instead of git-annotate.
Alexandre Julliard <julliard@winehq.org> writes:
Show 15 quoted lines
> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
> ---
> contrib/emacs/vc-git.el | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/contrib/emacs/vc-git.el b/contrib/emacs/vc-git.el
> index 4a8f790..4189c4c 100644
> --- a/contrib/emacs/vc-git.el
> +++ b/contrib/emacs/vc-git.el
> @@ -119,10 +119,10 @@ (defun vc-git-checkout (file &optional e
> (defun vc-git-annotate-command (file buf &optional rev)
> ; FIXME: rev is ignored
> (let ((name (file-relative-name file)))
> - (call-process "git" nil buf nil "annotate" name)))
> + (call-process "git" nil buf nil "blame" name)))
"blame -c" is advertised to give the same format as "annotate", so I think you would not need other hunk if you did.
Show 5 quoted lines
> (defun vc-git-annotate-time ()
> - (and (re-search-forward "[0-9a-f]+\t(.*\t\\([0-9]+\\)-\\([0-9]+\\)-\\([0-9]+\\) \\([0-9]+\\):\\([0-9]+\\):\\([0-9]+\\) \\([-+0-9]+\\)\t[0-9]+)" nil t)
> + (and (re-search-forward "[0-9a-f]+ (.* \\([0-9]+\\)-\\([0-9]+\\)-\\([0-9]+\\) \\([0-9]+\\):\\([0-9]+\\):\\([0-9]+\\) \\([-+0-9]+\\) +[0-9]+)" nil t)
> (vc-annotate-convert-time
> (apply #'encode-time (mapcar (lambda (match) (string-to-number (match-string match))) '(6 5 4 3 2 1 7))))))
Not that I am preferring the annotate output format over blame's native output format. I just wanted to know if the reason you did not do -c was because you tried and "blame -c" was not compatible as advertised (in which case we have one more thing to fix).