erros do vim (vimdiff) antes de abrir cada arquivo com git difftool

erros do vim (vimdiff) antes de abrir cada arquivo com git difftool
"~/Desktop/project/file.txt" [readonly] 81L, 2480C
Error detected while processing command line:
E344: Can't find directory "src/" in cdpath
E472: Command failed
Press ENTER or type command to continue

^ Este erro aparece antes de abrir cada arquivo. Não tenho ideia de onde está vindo o erro, porque diz ... while processing command line:e depois fica em branco...

O comando que estou usando para invocar isso égit difftool

Além disso, o diretório em que estou quando chamo isso é ~/Desktop/project/src, que presumo ser o local onde ele está obtendo o Can't find directory "src/".

Responder1

Eu tive um problema semelhante ao usar o git difftool. Verifique seus .vimrcplug-ins ou lcd %:p:h. Resolvi o problema adicionando o seguinte ao ligar lcd %:p:h:

if !&diff
  lcd %:p:h
endif

Responder2

Parece que o Git está invocando vimdiffa partir do ~/Desktop/projectdiretório e passa os arquivos como src/...Com esse caminho relativo, o Vim consultará a 'cdpath'configuração, e o que quer que esteja lá não tem um src/diretório, e então o erro ocorre (na linha de comando) .

A maneira correta para o Git seria usar ./src/..., ou um caminho absoluto, mas isso provavelmente é difícil de mudar. Em vez disso, você pode influenciar o valor padrão do Vim por meio da CDPATHvariável de ambiente ou apenas inserir :set cdpath=seu ~/.vimrcpara desabilitar pragmaticamente essas pesquisas.

informação relacionada