我已经使用自制软件安装了最新版本的git(1.8.3),但是当我键入
git --version
在我的终端上,它打印:
git version 1.7.10.2 (Apple Git-33)
我应该怎么做才能用新版本替换旧版本的git?
我已经使用自制软件安装了最新版本的git(1.8.3),但是当我键入
git --version
在我的终端上,它打印:
git version 1.7.10.2 (Apple Git-33)
我应该怎么做才能用新版本替换旧版本的git?
Answers:
感谢大家提供有用的答案。就我而言
export PATH="/usr/local/bin:${PATH}"
在~/.bash_profile之后
source ~/.bash_profile
为我的用户解决了问题。
/usr/local/bin上面/usr/bin在/etc/paths。
brew doctor诊断问题时提出的解决方案
/etc/paths。仅定义“出口”可能还不够,如果(从酿造中)/usr/bin具有“优先权” /usr/local/bin...
好的,我准备认真对待scm。
$ git --version
git version 1.9.5 (Apple Git-50.3)
不,那不是我想要的。我<3自酿,所以:
$ brew install git
可以了,好了?
$ git --version
git version 1.9.5 (Apple Git-50.3)
h!(抓头)
$ which git
/usr/bin/git
啊,Apple的git在/ usr / bin中,所以它胜过自制软件。该怎么办?
(A)只需重命名Apple的二进制文件
(B)让自制软件管理一个优先级:
[编辑PATH导出,例如〜/ .zshrc(oh-my-zsh + iTerm2 FTW!/ tangent)]
[具体来说:将/ usr / local / bin / git:移至/ usr / bin之前:]
...和/或(例如,为了更广泛地安装自制软件,并且优先于所有外壳程序和用户使用)还编辑/ etc / paths文件,[将/ usr / local / bin移至/ usr / bin上方]
但假设仅是最简单/侵入性最小的方法:
$ sudo mv /usr/bin/git /usr/bin/git-apple
奏效了吗?
$ which git
/usr/local/bin/git
到目前为止一切顺利,现在是关键时刻:
$ git --version
git version 2.2.1
w00t!:)是时候阅读http://git-scm.com了!:)
which git指向/usr/local/bin/git,这对我也不起作用。为了解决这个问题,我必须卸载GitHub Mac应用程序。
sudo mv /usr/bin/git /usr/bin/git-apple mv: rename /usr/bin/git to /usr/bin/git-apple: Operation not permitted
带有最新Homebrew的macOS Sierra&Mojave不再需要此处几个答案中提到的所有技巧。忘记export PATH="..."和修改~/.bash_profile。
你干嘛
brew install git
和你完成。
要确认,请打开一个新的(!)终端窗口,然后键入
git --version
brew link --overwrite git为我工作
通过brew(brew install git)安装了最新的git后,请运行此单行代码(如推荐brew doctor),如果还没有的话:
echo "export PATH=/usr/local/bin:$PATH" >> ~/.bash_profile
然后退出终端并再次打开它(重新启动bash会话)。即使您的PATH已经正确,您也需要这样做,因为ZSH和Bash会缓存PATH的内容(请参阅内置命令上的文档hash)。
那应该可以很快地解决问题。
当您键入
git --version
在Terminal.app或控制台中,您对另一个问题的评论表明它返回的版本是/ usr / bin / git中的git。
如果您安装了Xcode 4.5(及更高版本),然后键入
xcrun git --version
在Terminal.app或控制台中,它返回的版本是Xcode应用程序包中的git。
如果您使用Homebrew安装和更新git,最简单的解决方案是
通过使用mv重命名原始位置来重命名原始位置。例如
须藤MV / usr / bin / git / usr / bin / git-ORIGINAL
使用'ln -s'创建与您通过Homebrew安装的git二进制文件的软链接。
请注意,MattDMo在注释中有更好的解决方案。
/usr/bin,因为您甚至不了解的其他程序可能取决于与特定版本相关的变化。最简单的解决方案是不添加任何内容,而是在/usr/local/bin$PATH/usr/bin/usr/local/bin
您必须通过apple将原始git重命名为/usr/bin/git-org,因为/usr/bin通常在/usr/local/bin酿造物所在的路径目录中。
所以:
cd /usr/bin
sudo mv git git-org
并且不要忘记链接Brew git
brew link git
假设这/usr/local/bin是在您的$PATH环境变量中。如果仍有问题,请尝试运行
brew doctor
并解决那里提到的问题。
/usr/local/bin(自制程序的安装目录,IIRC)在$PATH提前/usr/bin,而不是用重命名摆弄周围和备份等
用brew安装git,运行它。
brew link --force git
关闭并重新打开终端以运行which git。
brew link --overwrite git工作
如果您是直接从git-scm.com安装git,并且想要使用最新下载的git而不是git的apple(旧)版本。
/usr/local/bin/gitgit --version,如果它返回Apple旧版本的git,请继续以下操作cd ~ (将目录更改为您的主目录)vi .bashrci(在vi编辑器中插入文本)export PATH.......,请在导出的顶部按Enter键,然后键入以下内容:(请export PATH=/usr/local/:$PATH特别注意PATH不要将变量弄乱,否则会给您的OS造成问题)(希望应该在中安装新的git /usr/local/git):wq(保存.bashrc文件)git --version(您应该看到新版本)这取决于您的git来自何处。例如,Xcode带来了一个版本,它也许是您前进的道路。
也许打字
which git
将显示旧的位置。
/usr/bin/git...