我刚买了一台带有OS X Lion的新Mac,我在终端检查了默认安装的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。我做错了什么?
答案 0 :(得分:53)
如果添加以下内容可能会更好:
export PATH=/usr/local/git/bin:/usr/local/sbin:$PATH
到您的主文件夹中名为.bashrc的文件。这样,您可能会首先找到您可能在/usr/local/git/bin
中安装的任何其他软件。
要获得简单的方法,请输入:
echo "export PATH=/usr/local/git/bin:/usr/local/sbin:$PATH" >> ~/.bashrc
进入终端,它会为你做。
答案 1 :(得分:24)
如果您已经拥有Homebrew ,这很简单: 假设您已安装自制软件,请键入以下内容:
brew install git
安装完成后,键入以下两行,这将设置我们到本地git发行版而不是Apple发行版的路径。
export PATH=/usr/local/bin:$PATH
git --version
如果你不回家,请遵循这些步骤 检查版本
$ 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
使用Homebrew安装Git
$ brew install git
符号链接
$ brew link --force git
关闭终端并重新打开然后检查版本
$ git --version
你应该看到......
git version <latest version>
尼斯!我们现在安全了!下次你可以......
$ brew update && brew upgrade
答案 2 :(得分:15)
我最近将OS X机器上的Git升级到最新版本。我没有使用您使用的相同.dmg
,但是当我安装它时,二进制文件被放置在/usr/local/bin
中。现在,我的PATH
排列方式,目录/usr/bin
出现在/usr/local/bin
之前。所以我做的是:
cd /usr/bin
mkdir git.ORIG
mv git* git.ORIG/
这将名为git*
的几个原始程序移动到一个新的子目录中,使它们不受阻碍。之后,which git
显示找到了/usr/local/bin
中的那个。
根据需要修改上述过程,以适应安装新二进制文件的任何位置。
答案 3 :(得分:13)
搜索&#34;麻烦升级git on mac&#34;在Google上,我阅读了几篇帖子并尝试了以下内容,然后通过完成第4步来解决问题:
我使用上面提到的导出命令更新了我的终端路径。每当我退出终端并重新启动它时,当我输入git --version
终端时,它仍会返回旧版本1.8。
我按照README.txt说明升级到.dmg安装程序附带的当前版本2.0.1,当我重新启动终端时,仍然没有。
我按照上面的说明查找了/ etc / path /文件夹,以及名为&#34; path&#34;的目录。在我的Mac上不存在。我正在运行OS X Mavericks版本10.9.4。
然后我记得我在Mac上安装了Homebrew并运行了以下内容:
brew --version
brew update
brew search git
brew install git
这终于解决了我的问题。如果有人对这为何如此有效有所了解,将会非常感谢进一步的见解。我去年使用Ruby时可能在我的系统上有一些遗留的路径设置。
答案 4 :(得分:11)
我使用以下命令在Mac上升级git。
hansi$ brew install git
hansi$ git --version
git version 2.19.0
hansi$ brew install git
Warning: git 2.25.1 is already installed, it's just not linked
You can use `brew link git` to link this version.
hansi$ brew link git
Linking /usr/local/Cellar/git/2.25.1...
Error: Could not symlink bin/git
Target /usr/local/bin/git
already exists. You may want to remove it:
rm '/usr/local/bin/git'
To force the link and overwrite all conflicting files:
brew link --overwrite git
To list all files that would be deleted:
brew link --overwrite --dry-run git
hansi$ brew link --overwrite git
Linking /usr/local/Cellar/git/2.25.1... 205 symlinks created
hansi$ git --version
git version 2.25.1
答案 5 :(得分:7)
如果使用自制软件,您可以使用
更新SIM卡链接brew link --overwrite git
答案 6 :(得分:6)
默认情况下,git主页中的安装程序会安装到/usr/local/git
。但是,如果您安装 XCode4 ,它将在/usr/bin
中安装git版本。为确保您可以轻松地从网站升级并使用最新的git版本,请修改您的个人资料信息,以便/usr/local/git/bin
在{strong> $ PATH 之前/usr/bin
或编辑{{1}并插入/etc/paths
作为第一个条目。
对于至少更改 / etc / paths 中的订单的人来说,这对我有帮助。
答案 7 :(得分:5)
http://git-scm.com/book/en/Getting-Started-Installing-Git
另一个主要方法是通过MacPorts安装Git (http://www.macports.org)。如果您安装了MacPorts,请安装Git 通过
$ sudo port install git-core + svn + doc + bash_completion + gitweb
答案 8 :(得分:2)
为了保留这两个版本,我只是通过添加新版本的git路径&#34; / usr / local / git / bin /&#34;来改变PATH环境变量的值。在开始时,它强制使用最新版本:
$ echo $ PATH
的/ usr / bin中:/ bin中:/ usr / sbin目录:/ sbin目录:在/ usr / local / bin中:/选择/ X11 / bin中:在/ usr /本地/ GIT中/ bin中/
$ git --version
git版本2.4.9(Apple Git-60)
原始值: / 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中:/选择/ X11 / bin中
$ export PATH = / usr / local / git / bin /:/ usr / bin:/ bin:/ usr / sbin:/ sbin:/ usr / local / bin:/ opt / X11 / bin
$ git --version
git version 2.13.0
答案 9 :(得分:1)
对于我,Homebrew 1.6.7
,以下工作:
brew upgrade git
答案 10 :(得分:0)
您无需任何命令即可执行此操作。 Katrina 提到的 Git installer 是解决方案,但这样做更容易:
在“项目活动”下选择最新版本,下载并打开扩展名为 .pkg 的文件。
然后,在“安全和隐私”系统首选项中,选择“始终打开”选项。安装后,您将拥有最新版本的 git
答案 11 :(得分:0)
@rafaecheve 的回应在我作为 Mac 用户的情况下非常有效。我的机器上安装了几个版本的 git,但使用的是包管理器、Homebrew 和以下代码:
upsert_all
我收到了此确认
brew link --overwrite git
瞧!
答案 12 :(得分:0)
最新版本无法在git-scm.com上以mac的二进制形式获得,因此我从源代码安装。我缺少本地化所需的软件包,并添加了NO_GETTEXT=true
来进行本地化安装。
git clone https://github.com/git/git.git
cd git
make NO_GETTEXT=true
make NO_GETTEXT=true install
此文件git
安装在~/bin
下,然后我必须将其添加到我的PATH
变量的开头。
答案 13 :(得分:0)
您需要调整外壳路径,该路径将在您的主目录中的.bashrc或.bash_profile中设置,更有可能是.bash_profile
因此,添加类似于以下内容的路径,并保留路径中已有的内容,每个句段之间用冒号分隔:
export PATH =“ / usr / local / bin:/ usr / bin / git:/ usr / bin:/ usr / local / sbin:$ PATH”
答案 14 :(得分:0)
我是这样做的:
git --version
,它应该会为您提供最新版本。答案 15 :(得分:0)
没有自制语
~/.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
应该说明来自dmg。{/ li>的README.txt
文件中的目录
git --version
应该说更新的版本。 echo $PATH
应以/usr/local/git/bin:/usr/local/sbin:
答案 16 :(得分:0)
我不想改变路径层次结构,而是专门处理git ... 知道我永远不会使用旧的git来做新的git现在将管理的。这是一个强力解决方案。
注意:我在Yosemite(10.10.2)上安装了XCode,首先清理 。
然后我从git-scm.com上的二进制文件安装。
$ which git
/usr/bin/git
$ cd /usr/bin
$ sudo ln -sf /usr/local/git/bin/git
$ sudo ln -sf /usr/local/git/bin/git-credential-osxkeychain
$ sudo ln -sf /usr/local/git/bin/git-cvsserver
$ sudo ln -sf /usr/local/git/bin/git-receive-pack
$ sudo ln -sf /usr/local/git/bin/git-shell
$ sudo ln -sf /usr/local/git/bin/git-upload-archive
$ sudo ln -sf /usr/local/git/bin/git-upload-pack
$ ls -la
(you should see your new symlinks)