Я только что купил новый Mac с OS X Lion и проверил в Терминале, какая версия git установлена по умолчанию. Я получил ответ
git --version
> git version 1.7.5.4
Я хотел бы обновить git до последней версии 1.7.8.3, поэтому я скачал установщик dmg "git-1.7.8.3-intel-universal-snow-leopard.dmg" и запустил его.
После установки Терминал все еще говорит, что версия 1.7.5.4. Что я делаю не так?
which git
чтобы увидеть, где находится бинарный файл. Это то же самое место, где вы установили новый?/usr/bin/git
о 1.7.5.4, но как я могу узнать, где DMG установил новую версию? Почему он не обновляет / не перезаписывает предыдущую версию автоматически? Если я хочу использовать новую, как я могу связатьgit
команду с новой версией? (спасибо за ваш действительно быстрый ответ, кстати!)Ответы:
Вероятно, было бы лучше, если бы вы добавили:
в файл с именем .bashrc в вашей домашней папке. Таким образом, любое другое программное обеспечение, в которое вы можете установить
/usr/local/git/bin
, также будет найдено в первую очередь.Для простого способа сделать это просто введите:
в терминал, и он сделает это за вас.
источник
echo 'export PATH="/usr/local/git/bin:/usr/local/sbin:~/bin:$PATH"' >> ~/.bash_profile
находится в moncefbelyamani.com . Обсуждение того, следует ли добавлять в .bash_profile или .bashrc, находится на сайте superuser.comgit
? Я только что проверил последнюю версию, официальный инсталлятор здесь устанавливает GIT INTO/usr/local/git/bin/git
, что означает , что вышеописанный способ должен еще работать на 10.8.4.Это просто, если у вас уже есть Homebrew : если у вас установлен homebrew, введите следующее:
После установки введите следующие две строки, которые зададут путь к локальному дистрибутиву git, а не к Apple.
ЕСЛИ У ВАС НЕТ ДОМАШНЕГО КОРОБКА, СЛЕДУЙТЕ ЭТИМ ШАГАМ Проверить версию
$ git --version
Резервное копирование (или удаление) Apple Git (необязательно)
$ sudo mv /usr/bin/git /usr/bin/git-apple
Установите Homebrew, если у вас не было
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Или обновите, если у вас уже есть
$ brew update && brew upgrade
Установите Git с Homebrew
$ brew install git
Символьная ссылка
$ brew link --force git
Закройте терминал и снова откройте, затем проверьте версию
$ git --version
Тебе следует увидеть…
git version <latest version>
Ницца! Теперь мы в безопасности! И в следующий раз вы можете просто ...
$ brew update && brew upgrade
источник
sudo mv /usr/bin/git /usr/bin/git-apple
: Переименование системы git не будет работать в macOS El Capitan и более поздних версиях, если вы не отключите защиту целостности системы, как описано здесь apple.stackexchange.com/a/248229/16290 . Лично я просто обновляю свой,PATH
так что/usr/local/bin
приходит раньше/usr/bin
. Таким образом, Git Homebrew всегда имеет приоритет (после закрытия терминала и повторного открытия). В случае уязвимостей безопасности git Apple в конечном итоге обновит git своими обновлениями безопасности. В то же время можно просто избежать использования встроенного git, настроив PATH, как описано.После поиска "проблемы с обновлением git на mac" в Google я прочитал несколько сообщений и попытался выполнить следующее, прежде чем решить проблему, выполнив шаг 4:
Я обновил свой путь к терминалу, используя вышеупомянутую команду экспорта. Каждый раз, когда я выходил из терминала и перезапускал его, когда я набирал
git --version
терминал, он по-прежнему возвращал старую версию 1.8.Я следовал инструкциям README.txt для обновления до текущей версии 2.0.1, которая поставляется с установщиком .dmg, и когда я перезапустил терминал, все равно не пошел.
Я искал / etc / path / folder, как указано выше, и каталог с именем «path» не существует на моем Mac. Я использую OS X Mavericks версии 10.9.4.
Затем я вспомнил, что на моем Mac установлен Homebrew, и запустил следующее:
Это наконец решило мою проблему. Если у кого-то есть понимание того, почему это работает, дальнейшее понимание будет с благодарностью. Возможно, в моей системе остались некоторые настройки пути после работы с Ruby в прошлом году.
источник
brew install git
я получил сообщение об ошибке, и он предложилbrew upgrade git
вместо этого выполнить команду. Ты человек! Это действительно просто трюк :)Недавно я обновил Git на моей машине с OS X до последней версии. Я не использовал то же самое, что
.dmg
вы использовали, но когда я установил его, были помещены двоичные файлы/usr/local/bin
. Теперь, как мойPATH
был устроен, каталог/usr/bin
появляется раньше/usr/local/bin
. Итак, что я сделал:Это перемещает несколько исходных программ, названных
git*
в новый подкаталог, который не позволяет им работать. После этогоwhich git
показывает, что тот в/usr/local/bin
найден.При необходимости измените описанную выше процедуру, чтобы она соответствовала месту установки новых двоичных файлов.
источник
/usr/local/git
.если вы используете homebrew, вы можете обновить сим-ссылки, используя
источник
brew install git
получил мне последнюю версию, но он не настроил символическую ссылку должным образом. Запускbrew link git
дал мне ошибку, сказав, что не может Git символическая ссылка, потому что он уже существует. наконец-то бегомbrew link --overwrite git
забил гвоздь в гроб, так что теперьgit --version
я нахожусь на самойУстановщик с домашней страницы git устанавливается
/usr/local/git
по умолчанию. Однако, если вы установите XCode4 , он установит версию git в/usr/bin
. Чтобы вы могли легко выполнить обновление с веб-сайта и использовать последнюю версию git, отредактируйте либо информацию своего профиля, чтобы поместить ее/usr/local/git/bin
ранее/usr/bin
в $ PATH, либо отредактируйте/etc/paths
и вставьте/usr/local/git/bin
в качестве первой записи.Это может помочь кому-то хотя бы изменить порядок в / etc / paths, который работал для меня.
источник
Для меня с
Homebrew 1.6.7
этим сработало следующее:источник
Я использовал следующее для обновления Git на Mac.
источник
brew unlink git && brew link git && source ~/.bashrc
самый простой способ, который я нашел до сих пор, это с официального сайта git. Он просто вычислил зависимости и загрузил все необходимые библиотеки / инструменты
http://git-scm.com/book/en/Getting-Started-Installing-Git
источник
Чтобы сохранить обе версии, я просто изменил значение переменной среды PATH, поместив путь к новой версии git "/ usr / local / git / bin /" в начале, это заставляет использовать самую новую версию:
Исходное значение: / usr / bin: / bin: / usr / sbin: / sbin: / usr / local / bin: / opt / X11 / bin: / usr / local / git / bin /
новое значение: / usr / local / git / bin / : / usr / bin: / bin: / usr / sbin: / sbin: / usr / local / bin: / opt / X11 / bin
источник
Без доморощенного
~/.bash_profile
файл. Обратите внимание, что эта команда отличается от ответа kmikael тем, что она помещает в файл:export PATH=/usr/local/git/bin:/usr/local/sbin/:[and so on]
export PATH="/usr/local/git/bin:/usr/local/sbin:$PATH"
echo 'export PATH="/usr/local/git/bin:/usr/local/sbin:$PATH"' >> ~/.bash_profile
ln -s /opt/local/bin/git /usr/bin/git
which git
следует сказать, каталог вREADME.txt
файле от dmg.git --version
Должен сказать, обновленная версия.echo $PATH
должен начинаться с/usr/local/git/bin:/usr/local/sbin:
источник
Я предпочитаю не изменять иерархию путей, а вместо этого иметь дело с git специально ... зная, что я никогда не буду использовать старый git, чтобы делать то, что теперь будет делать новый git . Это решение грубой силы.
Примечание: Я установил XCode на Йосемити (10.10.2) чистый первый .
Затем я установил из двоичного файла, доступного на git-scm.com .
источник
Я сделал это следующим образом:
git --version
, он должен дать вам последнюю версию.источник
Вам нужно настроить путь оболочки, путь будет установлен в .bashrc или .bash_profile в вашем домашнем каталоге, скорее всего .bash_profile
Поэтому добавьте в путь, аналогичный приведенному ниже, и сохраните то, что у вас уже есть в пути, каждый сегмент разделен двоеточием:
экспорт PATH = "/ usr / local / bin: / usr / bin / git: / usr / bin: / usr / local / sbin: $ PATH"
источник
Последняя версия не была доступна в виде бинарного файла для Mac на git-scm.com, поэтому я установил ее из исходников. Мне не хватало необходимого пакета для локализации, и я добавил
NO_GETTEXT=true
для установки без локализации.Это установлено,
git
под~/bin
которым я тогда должен был добавить к началу моейPATH
переменной.источник