如何将Git升级到OS X上的最新版本?

我只是买了一个新的Mac OS X的狮子和我检查了terminal默认安装了什么版本的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”,然后启动了它。

安装完毕后,terminal还是说版本是1.7.5.4。 我究竟做错了什么?

如果你添加下面的话可能会更好:

 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 

进入terminal,它会为你做。

我最近把我的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被find。

根据需要修改上述过程以适应安装新的二进制文件的位置。

在Googlesearch“在mac上升级git故障”后,我读了几个post,尝试了以下内容,然后通过完成步骤4来解决问题:

  1. 我使用上面提到的export命令更新了我的terminalpath。 每次我退出terminal并重新启动,当我inputgit --versionterminal,它仍然返回旧版本1.8。

  2. 我遵循README.txt指令升级到.dmg安装程序附带的当前版本2.0.1,并且当我重新启动terminal时,仍然不行。

  3. 我按照上面的指示查找了/ etc / path /文件夹,在我的Mac上不存在名为“path”的目录。 我正在运行OS X Mavericks版本10.9.4。

  4. 然后我回想起我的Mac上安装了自制软件 ,并运行以下内容:

     brew --version brew update brew search git brew install git 

这终于解决了我的问题。 如果任何人有一些洞察力为什么这个工作,进一步的洞察力将不胜感激。 去年我使用Ruby的时候,我的系统中可能还剩下一些path设置。

git主页上的安装程序默认安装到/usr/local/git 。 但是,如果你安装了XCode4 ,它将在/usr/bin安装一个git版本。 为确保您可以轻松地从网站升级并使用最新的git版本,请编辑您的configuration文件信息,将/usr/local/git/bin /usr/bin放在$ PATH中的/usr/bin之前,或者编辑/etc/paths并插入/usr/local/git/bin作为第一个条目。

这可能有助于某人至less改变为我工作的/ etc /path中的顺序。

如果使用自制软件,您可以使用更新SIM卡链接

 brew link --overwrite git 

我发现迄今为止最简单的方法是从git官方网站。 它只是计算依赖关系,并下载了所有必需的库/工具

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

我不想改变path层次结构,而是专门处理git … 知道我永远不会使用旧的git来做新的git现在将pipe理的东西 。 这是一个蛮力解决scheme。

注意:我先在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) 

没有自制软件

  1. 从git的网站使用安装程序 。
  2. 更新你的~/.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

  1. 如果您使用Xcode,则需要添加一些符号链接 。
    • 例如: ln -s /opt/local/bin/git /usr/bin/git
  2. 重新启动terminal。
    • which git应该从dmg的README.txt文件中说出目录。
    • git --version应该说更新的版本。
    • echo $PATH应该以/usr/local/git/bin:/usr/local/sbin:开头/usr/local/git/bin:/usr/local/sbin:

我是这样做的:

  1. 打开Mac上安装的GitHub应用程序
  2. 点击高级选项卡→安装命令行工具
  3. 一旦您收到关于所有命令已安装的消息,请closuresterminal并重新打开。
  4. 现在检查git --version ,它应该给你最新的版本。

为了保持两个版本的不同,我只是通过将新版本的gitpath“/ usr / local / git / bin /”放在一边来改变PAHT环境variables的值,它强制使用最新版本:

$ echo $ PATH

在/ usr / bin中:/ bin中:/ usr / sbin目录:/ sbin目录:在/ usr / local / bin目录中:/ opt / 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:/ opt / X11 / bin

$ export PATH = / usr / local / git / bin /:/ usr / bin:/ bin:/ usr / sbin:/ sbin:/ usr / local / bin:/ opt / X11 / bin

$ git –version

git版本2.13.0