Usuwanie git z / usr / bin


11

Korzystam z systemu OS X 10.8 i korzystam z Homebrew. brew doctormówi mi, że mam 2 instalacje git, jedną w /usr/bindrugiej, a drugą w /usr/local/bin.

Czy usunięcie git jest złym pomysłem /usr/bin? Jeśli nie, jaki jest najlepszy sposób na usunięcie git i następujących składników, /usr/binaby używać tylko Homebrew?

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

Odpowiedzi:


12

Jaki jest najlepszy sposób na usunięcie git i następujących składników z / usr / bin, aby używać tylko Homebrew?

Twoja powłoka używa plików binarnych innych niż Homebrew tylko dlatego, że są na pierwszym miejscu w twoim $PATH.

Tak więc w swoim ~/.bash_profile(lub ~/.profile, w zależności od tego, którego używasz), dodaj następujący wiersz:

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

Usuń wszystkie inne PATHzadania, które zostałyby wprowadzone /usr/local/binpóźniej $PATH, ponieważ wtedy /usr/binbyłby pierwszy, a twoja powłoka użyłaby systemu git.


Państwo mogłoby usunąć instalacje w Git /usr/bin, ale to zależy, który z nich wybrać. Wierzę, że w pewnym momencie użyłeś instalatora git-osx , który go tam umieścił, ale nie ma problemu z utrzymaniem obu instalacji. Musisz tylko wiedzieć, którego chcesz użyć.


0

Zastosuj zdrowy rozsądek i zadaj sobie pytanie DLACZEGO chcesz usunąć jedną instalację? Czy chcesz za każdym razem wywoływać jeden z tych dupków? Najpierw umieść katalog bin w PATH .


0

Najlepszym sposobem jest usunięcie go za pomocą Homebrew, ponieważ ma zapis, że twój git został zainstalowany. Jeśli usuniesz go ręcznie, podczas procesu naprawy może go zainstalować ponownie.

Za pomocą następującego polecenia sprawdź, jakich plików używa pakiet git:

brew info --all git

Lub wszystkie pliki z zależnościami:

brew ls --unbrewed git

Najprostszym sposobem jest usunięcie go poprzez:

brew remove git

Ale to zależy od Ciebie. Jeśli git został zainstalowany przez innego menedżera pakietów, wypróbuj ten, z którym zainstalowałeś (np. Port itp.).


Obawiam się, że Homebrew nie będzie działał sudo- i tak nie trzeba uruchamiać go z uprawnieniami roota.
slhck

1
Obecność git w / usr / bin wskazuje, że jest to instalacja inna niż Homebrew.
echristopherson

Używam naparu z sudo, ale to zależy od twojej konfiguracji.
kenorb

0

Ponieważ „/ usr / bin / git” jest instalowany przez Apple git-48, więc wolę NIE zmieniać ŚCIEŻKI. Możesz zrobić coś takiego:

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

Następnie możesz to sprawdzić

$ git --version

Dane wyjściowe będą wyglądały tak: git wersja 2.1.0

BTW, jeśli chcesz zainstalować vim przez homebrew, to również działa.


0

Jak usunąć instalację git z / usr / local / bin na komputerze Mac. (OSX 10.14.2)

Miałem starą instalację gita 1.9.0 z pakietu instalatora git-osx (git-1.9.0-intel-universal-snow-leopard.dmg). Oto jak to usunąłem.

Pięść, znajdź swoją wersję git i zainstaluj lokalizację.

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

Następnie znajdź swój oryginalny pakiet instalatora git, w moim przypadku git-1.9.0-intel-universal-snow-leopard.dmg. Jeśli nie masz go do pobrania stąd: https://sourceforge.net/projects/git-osx-installer/files/

Na koniec otwórz pakiet instalatora (git-1.9.0-intel-universal-snow-leopard.dmg) i uruchom plik uninstall.sh w folderze głównym.

$ uninstall.sh

GOTOWE

Dołączanie pliku uninstall.sh, który pokazuje ścieżki plików, które są usuwane. Skrypt odinstalowania może być inny dla różnych wersji instalatora, więc upewnij się, że używasz poprawnego.

plik 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
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.