Use "~1" instead of "^" in vc-git.el to specify the parent of a Git commit.

lisp/vc/vc-git.el (vc-git-previous-revision): Use "~1" instead of
 "^", since the latter is a special character for MS-Windows system
 shells.
This commit is contained in:
Eli Zaretskii 2014-11-21 12:34:59 +02:00
parent f9b9251f8c
commit 04ed420021
2 changed files with 7 additions and 1 deletions

View file

@ -3,6 +3,8 @@
* vc/vc-git.el (vc-git-command, vc-git--call): Bind
coding-system-for-read and coding-system-for-write to
vc-git-commits-coding-system.
(vc-git-previous-revision): Use "~1" instead of "^", since the
latter is a special character for MS-Windows system shells.
2014-11-20 Michael Albinus <michael.albinus@gmx.de>

View file

@ -987,7 +987,11 @@ or BRANCH^ (where \"^\" can be repeated)."
(point)
(1- (point-max)))))))
(or (vc-git-symbolic-commit prev-rev) prev-rev))
(vc-git--rev-parse (concat rev "^"))))
;; We used to use "^" here, but that fails on MS-Windows if git is
;; invoked via a batch file, in which case cmd.exe strips the "^"
;; because it is a special character for cmd which process-file
;; does not (and cannot) quote.
(vc-git--rev-parse (concat rev "~1"))))
(defun vc-git--rev-parse (rev)
(with-temp-buffer