Errores de vim (vimdiff) antes de abrir cada archivo con git difftool

Errores de vim (vimdiff) antes de abrir cada archivo con 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 error aparece antes de abrir cada archivo. No tengo idea de dónde viene el error, porque dice ... while processing command line:y luego está en blanco...

El comando que estoy usando para invocar esto esgit difftool

Además, el directorio en el que estoy cuando llamo a esto es ~/Desktop/project/src, que supongo que es de donde obtiene el archivo Can't find directory "src/".

Respuesta1

Tuve un problema similar al usar git difftool. Verifique sus .vimrccomplementos o para lcd %:p:h. Resolví el problema agregando lo siguiente al llamar lcd %:p:h:

if !&diff
  lcd %:p:h
endif

Respuesta2

Parece que Git está invocando vimdiffdesde el ~/Desktop/projectdirectorio y pasa archivos como src/...Con esa ruta relativa, Vim consultará la 'cdpath'configuración y todo lo que hay allí no tiene un src/directorio, por lo que se produce el error (desde la línea de comandos) .

La forma correcta para Git sería usar ./src/..., o una ruta absoluta, pero probablemente sea difícil de cambiar. En su lugar, puede influir en el valor predeterminado de Vim a través de la CDPATHvariable de entorno, o simplemente ingresarlo :set cdpath=para ~/.vimrcdeshabilitar pragmáticamente estas búsquedas.

información relacionada