Видалення git з / usr / bin


11

Я перебуваю на OS X 10.8 і використовую Homebrew. brew doctorговорить мені, що у мене є 2 установки git, одна в, /usr/binа інша в /usr/local/bin.

Це погана ідея видалити git з /usr/bin? Якщо ні, то який найкращий спосіб видалити git та наступні компоненти, /usr/binщоб використовувати лише Homebrew's?

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

Відповіді:


12

Який найкращий спосіб видалити git та наступні компоненти з / usr / bin, щоб використовувати лише Homebrew?

Ваша оболонка використовує бінарні файли, які не є домашніми мовами, лише тому, що вони виходять першими у вашому $PATH.

Отже, у свій ~/.bash_profile(або ~/.profileзалежно від того, який ви використовуєте) додайте наступний рядок:

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

Видаліть усі інші PATHзавдання, які будуть зроблені /usr/local/binпісля $PATH, тому що тоді /usr/binвийде першим, і ваша оболонка використовує систему git.


Ви можете видалити інсталяції Git /usr/bin, але вибрати, яку вибрати. Я вважаю, у якийсь момент ви використовували інсталятор git-osx , який розмістив його там, але немає проблем із збереженням обох установок. Ви просто повинні знати, який саме ви хочете використовувати.


0

Застосуйте здоровий глузд і запитайте себе, ЧОМУ ви хочете, щоб одну установку видалили? Ви хочете щоразу викликати один із цих двох гейтів? Просто спочатку створіть його каталог Bin у PATH .


0

Найкращий спосіб - видалити його за допомогою Homebrew, оскільки він має запис про те, що ваш git був встановлений. Якщо ви видалите його вручну, під час певного процесу відновлення він може встановити його знову.

За допомогою наступної команди перевірте, які файли використовує пакет git:

brew info --all git

Або всі файли із залежностями:

brew ls --unbrewed git

Найпростіший спосіб - видалити його:

brew remove git

Але це залежить від вас. Якщо git був встановлений іншим менеджером пакунків, спробуйте той, який ви встановили (наприклад, порт тощо).


Я боюся, що Homebrew не буде працювати sudo- все одно не потрібно запускати його з дозволами root.
slhck

1
Наявність git в / usr / bin вказує на те, що він є установкою, яка не є Homebrew.
echristopherson

Я використовую варити з судо, але це залежить від вашої конфігурації.
kenorb

0

Через те, що "/ usr / bin / git" встановлено apple git-48, тому я вважаю за краще НЕ змінювати ПАТ. Ви можете зробити щось на кшталт наступного:

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

Тоді ви можете це перевірити

$ git - відвернення

Вихід буде таким: git версія 2.1.0

BTW, якщо ви хочете встановити vim домашньою мовою, він також працює.


0

Як видалити установку git з / usr / local / bin на Mac. (OSX 10.14.2)

Я мав стару установку 1.9.0 git з пакета інсталятора git-osx (git-1.9.0-intel-universal-snow-leopard.dmg). Ось як я її зняв.

Кулак, знайдіть свою версію git та встановіть місце розташування.

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

Потім знайдіть свій оригінальний пакет для встановлення git, в моєму випадку git-1.9.0-intel-universal-snow-leopard.dmg. Якщо у вас його немає, скачайте тут: https://sourceforge.net/projects/git-osx-installer/files/

Нарешті, відкрийте інсталяційний пакет (git-1.9.0-intel-universal-snow-leopard.dmg) та запустіть файл uninstall.sh у кореневій папці.

$ uninstall.sh

Зроблено

Додавання файлу uninstall.sh, який показує шляхи до файлу, які видаляються. Сценарій видалення може бути різним для різних версій інсталятора, тому обов'язково використовуйте правильний.

файл 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
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.