]> git.eshelyaron.com Git - emacs.git/commitdiff
Unset GIT_DIR when calling Git commands
authorDmitry Gutov <dgutov@yandex.ru>
Tue, 21 Jun 2016 23:04:33 +0000 (02:04 +0300)
committerDmitry Gutov <dgutov@yandex.ru>
Tue, 21 Jun 2016 23:04:33 +0000 (02:04 +0300)
* lisp/vc/vc-git.el (vc-git--call, vc-git-command):
Unset GIT_DIR (bug#23769).

lisp/vc/vc-git.el

index f35c84d50c52efcbfcbecdb8fc35a6a55f764b28..9eac5b26f033cccc59853f61ad99ee649fa24ab0 100644 (file)
@@ -1423,7 +1423,8 @@ The difference to vc-do-command is that this function always invokes
   (let ((coding-system-for-read
          (or coding-system-for-read vc-git-log-output-coding-system))
        (coding-system-for-write
-         (or coding-system-for-write vc-git-commits-coding-system)))
+         (or coding-system-for-write vc-git-commits-coding-system))
+        (process-environment (cons "GIT_DIR" process-environment)))
     (apply 'vc-do-command (or buffer "*vc*") okstatus vc-git-program
           ;; http://debbugs.gnu.org/16897
           (unless (and (not (cdr-safe file-or-list))
@@ -1451,6 +1452,7 @@ The difference to vc-do-command is that this function always invokes
        (coding-system-for-write
          (or coding-system-for-write vc-git-commits-coding-system))
        (process-environment (cons "PAGER=" process-environment)))
+    (push "GIT_DIR" process-environment)
     (apply 'process-file vc-git-program nil buffer nil command args)))
 
 (defun vc-git--out-ok (command &rest args)