Почему Git не найден после установки OS X Lion?


87

Я только что обновился до OS X Lion и теперь не могу инициализировать Git там, где он работал нормально:

$ git add .

-bash: git: command not found

Я новичок в Git и в программировании, так что я уверен, что это быстрое решение, любая помощь очень ценится. Спасибо, парни!


1
у вас установлен macports?

я не ... вы рекомендуете установить?

9
лично я бы установил его, используя homebrew вместо macports - mxcl.github.com/homebrew
house9

2
brew > portsтакже, возможно, мерзавец просто не в твоем $PATH. Попробуйте, sudo find / -name gitи вы можете просто найти свой двоичный файл.

1
Почему вы бы порекомендовали Macports или Homebrew только для мерзавца? Просто любопытно. Я использую code.google.com/p/git-osx-installer
Дэн Розенстарк

Ответы:


72

Если / usr / local / git уже существует, вам нужно либо добавить его в $ PATH, либо создать символическую ссылку, поместив символическую ссылку в каталог, который находится в вашем существующем PATH.

Обычная практика - сделать, /usr/local/binесли она не существует, и добавить ссылку:

sudo -s
mkdir -p /usr/local/bin
ln -s /usr/local/git/bin/git /usr/local/bin/git
exit

4
это правильный ответ

/ usr / local / git существует, но я получаю: «ln: / usr / local / bin / git: такого файла или каталога нет».

Это то, что нам было нужно, я думаю. Он делает то, что должен делать. Спасибо!

1
Это именно то, что решает проблему; это должно было быть помечено как правильный ответ
Дуг Молинью

1
Несмотря на то, что у большинства людей в / usr / local / git установлен git, возможно, ОП оценил общий ответ. Любой, кто захочет повторно задать этот вопрос, заявив, что выбранный ответ здесь не работает, может выбрать этот ответ, когда он будет предоставлен. Нет вреда в двух действительных вопросах с двумя действительными ответами.
bmike

58

Lion (и Snow Leopard) не поставлялись вместе git- поэтому, возможно, способ, которым вы установили git, не пережил обновление. Вам нужно будет найти свою копию git или просто получить новую копию. Использование центра внимания для поиска в резервных копиях Time Machine может оказаться полезным для поиска файлов и определения, является ли это проблемой с путями, или двоичные файлы действительно исчезли после того, как Lion перенес ваши данные.

Все ваши репозитории хранятся в пользовательском пространстве в порядке. Попробуйте получить ту же или более новую версию git.

В командной строке mdfind -name gitбудут перечислены все файлы, которые прожектор видел с git в имени. Большинство установок gitдолжны выдержать обновление до Lion, и вам нужно только очистить вашу среду или ссылку на двоичный файл где-то в вашем $PATH.

Xcode 4 (4.0-4.2) добавляет git /Developer/usr/binвместе с большинством других необходимых вам инструментов, таких как make и gcc. Может быть проще всего поддерживать git после получения (в настоящее время) бесплатного Xcode из App Store. Xcode 4.3 помещает giy и другие инструменты Applications/Xcode.app/Contents/Developer/usr/bin.

Чтобы избежать проблем с различными версиями, вы можете убедиться, что все старые версии были удалены с вашего жесткого диска. (и, конечно, из вашего $ PATH)


КЛАССНО! Я отправил этот вопрос, загружая новый Xcode. Только что проверил сейчас и все работает! Спасибо @Джохан Нордберг

3
Обратите внимание, XCode для Lion просто устанавливает установщик . Вам нужно будет зайти в папку с приложениями и запустить приложение для установки git.

2
У меня есть Git /usr/bin/git. Я установил Xcode 4 на чистую (переформатированную) установку Lion, и я не помню, чтобы когда-либо работал установщик Git.
Nate

1
У меня есть Lion (10.7.3) и только что установил XCode через App Store. Это в каталоге приложений, а не разработчик. На самом деле у меня даже нет каталога / Developer.
Мильмеоу

8
Xcode -> Настройки -> Загрузки -> Установить инструменты командной строки. Смотрите мой ответ ниже.
elsurudo

21

Если у вас установлен XCode, лучшим решением будет Xcode -> Настройки -> Загрузки -> Установить инструменты командной строки.

Это помещает git (среди прочего) в / usr / bin / git.

Если у вас не установлен Xcode, то установка его только для git определенно будет излишней.


1
Спасибо за это - безусловно, самый простой способ, если у вас уже установлен XCode.
Гленн Барнетт

15

Я думаю, вы обнаружите, что Git все еще установлен в вашей системе. Похоже, PATH только что испортили. Проверьте, существует ли / usr / local / git в вашей системе.

Я просто добавил следующее в мой файл ~ / .bashrc, и все вернулось к норме.

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

Чтобы быть более конкретным, этот сайт - http://www.joshstaiger.org/archives/2005/07/bash_profile_vs.html - подробно описывает разницу между .bashrc и .bash_profile. Если вы используете терминал Mac с Git, то добавление вышеуказанной спецификации PATH в ваш .bash_profile сделает эту работу. Конечно, вам придется закрыть окно терминала и открыть новое, потому что файл .bash_profile загружается при открытии окна терминала.

Таким образом, добавление этого в .bash_profile также будет работать.


Это именно то, что я тоже сделал, и Git снова работает.

2
Это правильное решение. Это только путь, который запутался. Другие ответы, которые люди дали здесь, - это обходные пути, а не решение.

Я пытался сделать это, но все еще получаю ошибку "команда не найдена" при попытке добавить git. Нужно ли мне полностью перезагружать компьютер, чтобы получить путь для обновления?
EmmyS

Вы перезапустили свой терминал? Или sourceваш файл .bash_profile? Просто введите source .bash_profileсвой терминал в то время как в вашей домашней директории
Аарон Чемберс

да, я перезапустил свой терминал. Я не уверен, что означает источник, но ответ с помощью ing0 ниже (минус переустановка git) работал для меня. Возможно, мой файл bashrc был не в том месте. В любом случае, это работает сейчас.
EmmyS

5

Шаг 1: Переустановите git (я только что установил версию Snow Leopard отсюда ), если она не в:

/ USR / местные

Шаг 2: Откройте Терминал и сделайте следующее:

CD / и т. д.

Судо Нано Башрц

Затем в нано вверху файла напишите (как предложил Аарон)

PATH = / USR / местные / мерзавец / бен: $ PATH

Нажмите Ctrl + X, чтобы выйти из nano, и нажмите Y, чтобы сохранить. Затем выйдите из терминала и снова откройте, и Git должен работать для вас.


Вам не нужно переустанавливать Git. Я верю, что вы найдете, что это все еще установлено. Проверьте / usr / local / git

Моя полностью ушла. Поэтому я переустанавливал. Как я уже сказал, если это там, то нет необходимости делать это!
ingh.am

Это сработало и для меня. До обновления Lion все работало нормально - это было более быстрое решение, чем загрузка XCode на 4 ГБ.

4

Возможно, вы установили gitчерез MacPorts или Fink.

Я думаю, что потребуется некоторое время, чтобы выпустить релиз для Lion ... или, возможно, вам следует попробовать переустановить его ...

Действительно, кажется, что вам нужно установить MacPorts из транка, чтобы получить Lion-совместимость ...

Финк также получил некоторые подсказки о переходе на Lion .


У меня были установлены и работают macports до моего обновления Lion. Моя команда порта все еще работает нормально (например: port selfupdate), но теперь мои установленные порты (например: git) - нет. Я вижу, что пакеты все еще находятся в / opt / local / var. Я думал, что это может быть проблема $ PATH, но ~ / .profile все еще имеет мои предыдущие (до обновления) конфигурации macports. Какие-либо предложения?

@ Adam Tootle: См. Бит «установить MacPorts из транка» в моем ответе ...

Я не был уверен, нужно ли мне это или нет, так как это работало;) Если я это сделаю, мне не придется переустанавливать все свои пакеты, не так ли?

@ Adam Tootle: Я так думаю ... Дело в том, что с Lion изменились все системные фреймворки и библиотеки (как обычно с основным выпуском) ...

ahh..gotcha. хорошо, что есть какая-то производительность в течение дня, ха-ха


1

Если вы используете brew, просто запустите эту команду из терминала.

brew install git


1

Это произошло потому, что git перестал быть частью $ PATH (по какой-то причине миграции).

Существует очень простой способ исправить это в OS X:

В OS X вы можете добавить переменные $PATH, изменив файл

/etc/paths

Итак, вы можете вернуть git, выполнив следующее:

sudo vim /etc/paths

добавить /usr/local/git/binв конец файла, сохранить и выйти. Перезапустите оболочку. Git должен работать.


1
/ etc, ты уверен? Разве это не должно быть / usr?
nohillside


0

Та же проблема здесь, скачал и установил версию снежного барса из кода Google, и я пошел. Нужно было выйти и заново открыть терминал, хотя ...

Все снова хорошо ..


0

Когда уже есть путь git,

просто добавьте каталог к ​​вашей переменной PATH.

echo 'export PATH=/usr/local/git/bin:$PATH' >> ~/.profile


0

Я использовал App Store для установки XCode, и он просто дает вам единый блоб приложения. Однако в нем есть другие приложения и установщики. Мне просто нужно было мерзавец, так что путь от этого export PATH=$PATH:/Applications/Xcode.app/Contents/Developer/usr/bin

Это немного взломать, но я не использую Xcode для многих вещей. Добавьте к своей конфигурации bash, как описано в других постерах, и все готово


Вместо того, чтобы возиться с $ PATH, на самом деле проще установить утилиты командной строки из Xcode и впоследствии использовать / usr / bin / git
nohillside


0

Вам не нужно изменять путь или устанавливать инструменты командной строки Xcode. Просто используйте утилиту «xcrun» из терминала: http://www.cocoanetics.com/2012/07/you-dont-need-the-xcode-command-line-tools/


Добро пожаловать, чтобы спросить другого! Это нормально, чтобы включить ссылку, но, пожалуйста, суммируйте или извлеките ее в ответе. Идея состоит в том, чтобы сделать ответ самостоятельно. Пожалуйста, посмотрите на часто задаваемые вопросы для получения дополнительной информации.
джентмэтт

-1

Я решил это, следуя советам на этом сайте:

http://blogger.forgottenskies.com/?p=740

Это был просто вопрос пути. Честно говоря, я ожидал намного больше проблем. Обновления становятся более плавными. Я помню, когда я перешел с Tiger на Leopard, почти все, что «с открытым исходным кодом» сломалось ..

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.