Removendo o git de / usr / bin


11

Estou no OS X 10.8 e estou usando o Homebrew. brew doctorme diz que eu tenho 2 instalações git, uma dentro /usr/bine outra dentro /usr/local/bin.

É uma má idéia remover o git /usr/bin? Se não, qual é a melhor maneira de remover o git e os seguintes componentes /usr/binpara usar apenas o Homebrew's?

git
git-cvsserver
git-receive-pack
git-shell
git-upload-archive
git-upload-pack
gitk

Respostas:


12

Qual é a melhor maneira de remover o git e os seguintes componentes do / usr / bin para usar apenas o Homebrew's?

Seu shell usa os binários não-Homebrew apenas porque eles são os primeiros no seu $PATH.

Portanto, no seu ~/.bash_profile(ou ~/.profile, dependendo do que você usar), adicione a seguinte linha:

export PATH=/usr/local/bin:$PATH

Remova todas as outras PATHatribuições que seriam colocadas /usr/local/bindepois $PATH, porque, então, /usr/binviriam primeiro e seu shell usaria o sistema git.


Você pode remover as instalações do Git /usr/bin, mas depende de qual escolher. Acredito que em algum momento você usou o git-osx-installer , que o colocou lá, mas não há problema em manter as duas instalações. Você só precisa saber qual deles deseja usar.


0

Aplique bom senso e pergunte a si mesmo POR QUE você deseja remover uma instalação? Deseja invocar um desses dois idiotas toda vez? Basta ter seu diretório bin no PATH primeiro.


0

A melhor maneira é removê-lo usando o Homebrew, porque ele tem o registro de que seu git foi instalado. Se você o remover manualmente, durante algum processo de reparo, ele poderá ser instalado novamente.

Com o seguinte comando, verifique quais arquivos o pacote git está usando:

brew info --all git

Ou todos os arquivos com dependências:

brew ls --unbrewed git

A maneira mais simples é removê-lo:

brew remove git

Mas depende de você. Se o git foi instalado por um gerenciador de pacotes diferente, tente aquele com o qual você instalou (como porta, etc.).


Receio que o Homebrew não funcione sudo- não há necessidade de executá-lo com permissões de root.
slhck

1
A presença do git em / usr / bin indica que é uma instalação não-Homebrew.
echristopherson

Estou usando o brew com o sudo, mas isso depende da sua configuração.
Kenorb

0

Por causa do "/ usr / bin / git" estar instalado pelo apple git-48, prefiro NÃO alterar o PATH. Você pode fazer algo como o seguinte:

$ brew update
$ brew install
$ sudo mv / usr / bin / git / usr / bin / git-48

Então você pode verificá-lo

$ git --version

A saída será assim: git versão 2.1.0

BTW, se você deseja instalar o vim pelo homebrew, ele também funciona.


0

Como remover a instalação do git de / usr / local / bin em um Mac. (OSX 10.14.2)

Eu tinha uma instalação antiga do git 1.9.0 a partir de um pacote git-osx-installer (git-1.9.0-intel-universal-snow-leopard.dmg). Aqui está como eu o removi.

Punho, encontre sua versão do git e instale o local.

$ which git
/usr/local/git/bin/git
$ git --version
git version 1.9.0

Em seguida, encontre o pacote original do instalador do git, no meu caso, git-1.9.0-intel-universal-snow-leopard.dmg. Se você não tiver o download aqui: https://sourceforge.net/projects/git-osx-installer/files/

Por fim, abra o pacote do instalador (git-1.9.0-intel-universal-snow-leopard.dmg) e execute o arquivo uninstall.sh na pasta raiz.

$ uninstall.sh

FEITO

Anexando o arquivo uninstall.sh, que mostra os caminhos do arquivo que estão sendo excluídos. O script de desinstalação pode ser diferente para diferentes versões do instalador, portanto, use o correto.

Arquivo uninstall.sh (git-1.9.0-intel-universal-snow-leopard.dmg)

if [ ! -r "/usr/local/git" ]; then
  echo "Git doesn't appear to be installed via this installer.  Aborting"
  exit 1
fi
echo "This will uninstall git by removing /usr/local/git/**/*, /etc/paths.d/git, /etc/manpaths.d/git"
printf "Type 'yes' if you sure you wish to continue: "
read response
if [ "$response" == "yes" ]; then
  sudo rm -rf /usr/local/git/
  sudo rm /etc/paths.d/git
  sudo rm /etc/manpaths.d/git
  pkgutil --packages | grep GitOSX.Installer | xargs -I {} sudo pkgutil --forget {}
  echo "Uninstalled"
else
  echo "Aborted"
  exit 1
fi

exit 0
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.