[PATCH] vc-git: support asynchronous annotations, and improve versioning.
- From
David Kastrup <dak@gnu.org>
- Date
- Jul 15, 2007, 23:53 UTC
- Message-ID
- <cfa5ed80635135dd7544f2b4c6df521a4353e90d.1184548803.git.dak@gnu.org>
- In-Reply-To
- <403842ba71506c7b194812cd9a4f669c847eb7bc.1184548803.git.dak@gnu.org>
(vc-git-symbolic-commit): Allow nil to pass through. (vc-git-previous-version): Use explicit parent argument. (vc-git-next-version): Simplify. (vc-git-annotate-command): Use `vc-do-command'. (vc-git-annotate-extract-revision-at-line): Rename from `vc-annotate-extract-revision-at-line'. (vc-git-checkout): Make nicer way of ensuring encoding.
Signed-off-by: David Kastrup <dak@gnu.org> --- contrib/emacs/vc-git.el | 21 ++++++++++----------- 1 files changed, 10 insertions(+), 11 deletions(-)
diff --git a/contrib/emacs/vc-git.el b/contrib/emacs/vc-git.el index 2a0a0fe..d7ad314 100644 --- a/contrib/emacs/vc-git.el +++ b/contrib/emacs/vc-git.el @@ -173,23 +173,22 @@ Returns nil if not possible." (let ((fullname (substring (vc-git--run-command-string file "ls-files" "-z" "--full-name" "--") 0 -1)) - (coding-system-for-read 'no-conversion) - coding-system-for-write) + (coding-system-for-read 'no-conversion)) (with-temp-file destfile - (prog1 - (eq 0 (call-process "git" nil t nil "cat-file" "blob" - (concat (or rev "HEAD") ":" fullname))) - (setq coding-system-for-write 'no-conversion)))) + (setq buffer-file-coding-system 'no-conversion) + (eq 0 (call-process "git" nil t nil "cat-file" "blob" + (concat (or rev "HEAD") ":" fullname))))) (vc-git--run-command file "checkout" (or rev "HEAD")))) (defun vc-git-annotate-command (file buffer &optional version) "Execute \"git blame\" on FILE, inserting the contents in BUFFER. Optional arg VERSION is a version to annotate from." - (vc-do-command buffer - 'async - "git" file "blame" - (or version "HEAD") - "--")) + (let ((coding-system-for-read git-commits-coding-system)) + (vc-do-command buffer + 'async + "git" file "blame" + (or version "HEAD") + "--"))) ;;(defun vc-git-annotate-command (file buf &optional rev) ;; (let ((name (file-relative-name file)))
-- 1.4.4.2