1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-30 04:10:54 -08:00

Bind the GIT_LITERAL_PATHSPECS environment variable

* lisp/vc/vc-git.el (vc-git-command):
(vc-git--call): Ensure that git interprets file names literally
(bug#39452).
This commit is contained in:
Dmitry Gutov 2021-07-22 14:41:52 +02:00 committed by Lars Ingebrigtsen
parent 6f9ff3d749
commit a2d0ff2600
2 changed files with 8 additions and 0 deletions

View file

@ -886,6 +886,12 @@ keys, add the following to your init file:
** Change Logs and VC
*** vc-git now sets the GIT_LITERAL_PATHSPECS environment variable.
This ensures that Git operations on files containing wildcard
characters work as they're supposed to. However, this also affects
scripts running from Git hooks, and these have to "unset
GIT_LITERAL_PATHSPECS" to work as before.
*** More VC commands can be used from non-file buffers.
The relevant commands are those that don't change the VC state.
The non-file buffers which can use VC commands are those that have

View file

@ -1772,6 +1772,7 @@ The difference to vc-do-command is that this function always invokes
(process-environment
(append
`("GIT_DIR"
"GIT_LITERAL_PATHSPECS=1"
;; Avoid repository locking during background operations
;; (bug#21559).
,@(when revert-buffer-in-progress-p
@ -1806,6 +1807,7 @@ The difference to vc-do-command is that this function always invokes
(process-environment
(append
`("GIT_DIR"
"GIT_LITERAL_PATHSPECS=1"
;; Avoid repository locking during background operations
;; (bug#21559).
,@(when revert-buffer-in-progress-p