Quiero actualizar git. Encuentro este artículo:
En uno de los primeros pasos, tengo un problema. Cuando traté de hacer una copia de seguridad de git actualmente instalado, obtuve una restricción de permisos. Está bien, debe ser alguna restricción del sistema OSX.
He comprobado el PATH y me he dado cuenta de que /usr/bin
es después de /usr/local/bin
. Así que si sólo instalo la nueva versión de git a través de brew esta versión se utilizará (ya que brew instala todo en /usr/local/bin
. Lo hice y el resultado me frustró. El viejo git está utilizando en lugar de instalar a través de brew. ¿Por qué?
Aquí hay algunos resultados:
svlad at sharikovvlad in ~/sandbox/git-test on master [+]
$ git --version
git version 2.11.0 (Apple Git-81)
svlad at sharikovvlad in ~/sandbox/git-test on master [+]
$ which git
/usr/local/bin/git
svlad at sharikovvlad in ~/sandbox/git-test on master [+]
$ ls -al /usr/local/bin/git | grep git
lrwxr-xr-x 1 svlad admin 28 Sep 3 18:16 /usr/local/bin/git -> ../Cellar/git/2.14.1/bin/git
svlad at sharikovvlad in ~/sandbox/git-test on master [+]
$ /usr/local/Cellar/git/2.14.1/bin/git --version
git version 2.14.1
svlad at sharikovvlad in ~/sandbox/git-test on master [+]
$ echo $PATH
/Users/svlad/bin:/usr/local/opt/gnupg@1.4/libexec/gpgbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Frameworks/Mono.framework/Versions/Current/Commands
$
Entonces, ¿por qué apple git está utilizando? /usr/local/bin
es la primera en la ruta, por lo que se debe utilizar un enlace simbólico desde esta carpeta. Entonces, ¿por qué estoy recibiendo la versión antigua?
Además, ¿alguna idea de cómo puedo eliminar el git de Apple?
1 votos
"En uno de los primeros pasos, tengo un problema. Cuando traté de hacer una copia de seguridad de git actualmente instalado, obtuve una restricción de permisos. Está bien, debe ser alguna restricción del sistema OSX". Sí, se llama System Integrity Protection y te impide modificar ciertos archivos del sistema, incluyendo cualquier cosa en /usr/bin. Usted podría simplemente desactivar SIP y borrar o reemplazar /usr/bin/git-aunque eso no es realmente una buena solución.
0 votos
¿Has probado con un nuevo terminal o has reiniciado desde que instalaste el git homebrew?
0 votos
@Wowfunhappy ¡Hola! Gracias por tu respuesta. Sí, no es una buena solución en absoluto.
0 votos
@Mark Sí, reinicié el mac muchas veces después de instalar homebrew.
0 votos
En realidad, la pregunta no es por qué no puedo quitarlo. La pregunta principal es por qué OS elegir git de
/usr/bin
en lugar de/usr/local/bin
?local
dir está a la izquierda y como sé que MacOS trata de encontrar el comando en cada dir en PATH y va de izquierda a derecha. Así que git en/usr/local/bin
debe ser resuelto en primer lugar. Por qué git de/usr/bin
¿se utiliza entonces?0 votos
¿Qué da /usr/local/bin/git -version y por qué pasa el ls por grep?