el estado de git no puede encontrar diff-highlight

Ambiente

  • Mac OSX 10.12.3
  • Git versión 2.11.1 (instalado a través de Homebrew)

Git había estado trabajando anteriormente pero hoy, cuando git status en cualquier directory de git, recibí el siguiente error:

 sh: /Users/xxx/.zsh/bin/diff-highlight: No such file or directory 

Mi $ PATH es:

 /Users/xxx/.composer/vendor/bin:/Documents/Ruby:/usr/texbin:/Users/xxx/.rbenv/shims:/Users/xxx/.rbenv/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/git/bin:/Library/TeX/texbin:/Users/xxx/.composer/vendor/bin:/Documents/Ruby:/usr/texbin:/Users/xxx/.rbenv/shims:/Users/xxx/.fzf/bin 

¿Por qué recibo este error?

Encontré el problema. En mi directory .zsh, había eliminado mi subcarpeta / bin que tenía el ejecutable diff-highlight. Poner el / bin de nuevo resuelto el problema.

Instalar / actualizar a la última versión de Git, en su mayoría usando herramientas de administración de packages apropiadas como HOMEBREW , generalmente puede resolver problemas relacionados con instalaciones y herramientas / scripts que faltan.

Por algún motivo, mi sistema tampoco encontró diff-highlight al emitir commands de Git. Mientras lo comprobaba dos veces, descubrí que tenía un diff-highlight configurado para mi Git global como buscapersonas, y cada vez que trataba de ejecutar git sub-command (status / show / log) el buscapersonas no encontrado quería entrar en juego:

 / > git log /usr/local/share/git-core/contrib/diff-highlight/diff-highlight | less -r: /usr/local/share/git-core/contrib/diff-highlight/diff-highlight: No such file or directory 

Después de instalar Git de nuevo a través de brew install git o brew update git , se actualizó a la última versión (2.13.x), así como todas las herramientas / files de Git se han restablecido a su location normal. Para get los lugares donde la installation de elaboración pone las secuencias de commands / herramientas y los commands de Git, files, puede emitir:

 / > brew info git git: stable 2.13.0 (bottled), HEAD Distributed revision control system https://git-scm.com /usr/local/Cellar/git/2.13.0 (1,463 files, 33.2MB) 

Bajo mi carpeta ~ / dotfiles donde almaceno mi configuration global, entre otros también para Git, actualicé la configuration del buscapersonas a la location correcta del diff-highlight en el file ~ / dotfiles / git / gitconfig :

 [core] excludesfile = /Users/<user_name>/.gitignore_global pager = /usr/local/Cellar/git/2.13.0/share/git-core/contrib/diff-highlight/diff-highlight | less -r 

Para la configuration global, estoy usando una versión personalizada de Jack's Dotfiles .