如何在macOS上升级Git到最新版本?

我刚买了一台新的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。我做错了什么?

292287 次浏览

我最近也把我的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中的那个。

根据需要修改上面的过程,以适应您安装新二进制文件的地方。

如果你能补充以下内容可能会更好:

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

到终点站,它会为您办理的。

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

http://git-scm.com/book/en/Getting-Started-Installing-Git

另一种主要的方式是通过MacPorts安装Git (http://www.macports.org)。如果安装了MacPorts,请安装Git 通过< / p >

$ sudo端口安装git-core +svn +doc +bash_completion +gitweb

默认情况下,git主页中的安装程序安装到/usr/local/git中。然而,如果你安装了XCode4,它会在/usr/bin中安装一个git版本。为了确保您可以轻松地从网站升级并使用最新的git版本,编辑您的配置文件信息,将/usr/local/git/bin放在美元的路径中的/usr/bin之前,或者编辑/etc/paths并插入/usr/local/git/bin作为第一个条目。

它可能对某人有帮助,至少改变/etc/paths中的顺序对我有用。

在谷歌上搜索“在mac上升级git遇到麻烦”后,我阅读了几篇文章,并尝试了以下步骤,然后通过完成步骤4解决了问题:

  1. 我使用上面提到的导出命令更新了我的终端路径。每次我退出终端并重新启动它,当我输入git --version终端时,它仍然返回旧版本1.8。

  2. 我按照README.txt的说明升级到.dmg安装程序附带的当前版本2.0.1,当我重新启动终端时,仍然没有启动。

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

  4. 然后我回忆起我已经在我的Mac上安装了家酿,并运行以下程序:

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

This finally resolved my problem. If anyone has some insight as to why this worked, further insight would be greatly appreciated. I probably have some left over path settings on my system from working with Ruby last year.

如果使用自制,您可以更新sim链接使用

brew link --overwrite git

我不喜欢改变路径层次结构,而是专门处理git…知道我永远不会使用旧的git来做新的git现在将管理的事情。这是一个蛮力解决方案。

注意:我在Yosemite (10.10.2) clean 第一个上安装了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"
    • 你喜欢哪个就用哪个。
    • 李< / ul > < / >

echo 'export PATH="/usr/local/git/bin:/usr/local/sbin:$PATH"' >> ~/.bash_profile

  1. 如果你在使用Xcode,你需要添加一些符号链接
    • 例如:ln -s /opt/local/bin/git /usr/bin/git
    • 李< / ul > < / >
    • < >强重启终端。
      • which git应该表示dmg. xml文件中的README.txt文件中的目录。
      • git --version应该表示更新的版本。
      • echo $PATH应该以/usr/local/git/bin:/usr/local/sbin:开头
      • 李< / ul > < / >

我是这样做的:

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

为了保留两个版本,我只是改变了PATH环境变量的值,将新版本的git路径"/usr/local/git/bin/"在一开始,它强制使用最新版本:

$ echo $PATH

工作:/ bin: / usr / sbin: / sbin: / usr /地方/ bin: / opt / X11 / bin: / usr /地方/ git / bin /

$ git——版本

git 2.4.9版本(Apple git -60)

初始值:工作:/ bin: / usr / sbin: / sbin: / usr /地方/ bin: / opt / X11 / bin: /usr/local/git/bin/

新值: /usr/local/git/bin/: / usr / bin: / bin: / usr / sbin: / sbin: / usr /地方/ bin: / opt / X11 / bin

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

$ git——版本

Git 2.13.0版本

< p > 如果你已经有了Homebrew,这很简单: 假设您已经安装了自制程序,输入以下内容:

brew install git

这将自动安装git,并将其设置在您的路径中,取代Apple的路径。

现在退出并重新启动您的终端。

然后查看git版本确认。

git --version

如果上面命令的输出显示了最新的版本,并且没有提到Apple的版本细节,那么您就已经设置好了。

如果你仍然看到苹果版本,那么输入下面两行,这将手动将我们的路径设置为本地git发行版而不是苹果发行版。

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

对我来说,使用Homebrew 1.6.7,以下工作:

brew upgrade git

你需要调整shell路径,路径将被设置在你的主目录的.bashrc.bash_profile中,更可能是.bash_profile

所以添加到类似于下面的路径中,并保留路径中已经有的内容,每个段由冒号分隔:

export PATH="/usr/local/bin:/usr/bin/git:/usr/bin:/usr/local/sbin:$PATH"

在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

这将在~/bin下安装git,然后我必须将其添加到PATH变量的开头。

我使用以下方法在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

@rafaecheve的响应在我作为Mac用户的情况下非常有效。我在我的机器上安装了几个版本的git,但是使用了包管理器,Homebrew和以下代码:

brew link --overwrite git

我收到这个确认

Linking /usr/local/Cellar/git/2.32.0... 212 symlinks created.

瞧!

你不需要任何命令就可以做到。 Katrina提到的Git安装程序是解决方案,但是这样做更容易:

  1. - https://sourceforge.net/projects/git-osx-installer/ .

    进入链接

  2. 在“项目活动”下;选择最新版本,下载并打开扩展名为.pkg的文件。

  3. 然后,在Security &隐私系统首选项,选择“任意打开”;选择。安装后,您将获得最新版本的git

在macOS上,Monterey自制程序将二进制文件放置在/opt/homebrew/bin

将此添加到.bash_profile将优先于自制git而不是apple-git

export PATH=/opt/homebrew/bin:$PATH