[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#51497: 29.0.50; (vc-print-log) broken over TRAMP
From: |
Dima Kogan |
Subject: |
bug#51497: 29.0.50; (vc-print-log) broken over TRAMP |
Date: |
Sat, 30 Oct 2021 23:58:23 -0700 |
User-agent: |
mu4e 1.6.9; emacs 29.0.50 |
Hi. I figured this out.
(setq vc-command-messages t) doesn't do anything: emacs doesn't
recognize this as a valid file in git, so it only runs git commands at
file open time, which apparently aren't reported with
vc-command-messages.
Instead I ran with (setq tramp-verbose 6) and the key line is this:
23:46:27.247358 tramp-send-command (6) # ( cd DIR && unset GIT_DIR && git
--no-pager ls-files -c -z -- \:\(literal\)FILE.c </dev/null 2>/dev/null; echo
tramp_exit_status $? )
23:46:27.258502 tramp-wait-for-regexp (6) #
tramp_exit_status 128
Note the :(literal) stuff. This is what was added in the commit that the
bisection found to be the cause of the issue. I can try to run this
command directly (outside of emacs) on the target box:
$ git --no-pager ls-files -c -z -- ':(literal)FILE.c' </dev/null
fatal: Invalid pathspec magic 'literal' in ':(literal)FILE.c'
The issue is that this target box has a version of git too old to know
about :(literal):
kogan@aargh:~/stereo-server$ git --version
git version 1.8.3.1
Yeah, it's ancient, but I don't control this particular machine, and I
don't think basic stuff like "C-x v l" should be non-functional here.
Can we add some logic to emacs to not hard-depend on this stuff?
Thanks