用自制版本覆盖 Xcode 中的 git



我已经安装了XCode,因此git也在那里。由于我想拥有更新版本的 git,所以我使用自制软件安装。

但是 git 的自制版本从未被调用,因为我的 PATH 看起来像这样

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

这意味着/usr/bin/git/usr/local/bin/git之前被称为。

有没有办法在不更改路径的情况下更改它?

Xcode 实际上是在使用存储在 /Applications/Xcode.app/Contents/Developer/usr/bin 中的 GIT。 当您在 Xcode 安装过程中安装命令行工具时,同一版本的 GIT 会在 /usr/bin 中安装。 因此,您将无法更改 Xcode 正在使用的内容(除非您愿意处理 Xcode 包的内容)。 如果要从终端应用程序中使用自制安装的 GIT,则有两种选择:

  1. 引用具有完整路径的 GIT 作为/usr/local/bin/git ... 对于这种情况,您可以创建一个别名,例如 alias mgit=/usr/local/bin/git,然后使用终端中的mgit ...
  2. 如果您
  3. 使用 zsh 文件(或每次在命令行启动终端时),请在.bashrc.zshrc中更改路径PATH=/usr/local/bin:$PATH路径。

由于 Xcode 硬编码了安装在 /Applications/Xcode.app/Contents/Developer/usr/bin/git 上的 git 版本,我设法使用了这个解决方法:

  1. 切换到 Xcode 目录:

    cd /Applications/Xcode.app/Contents/Developer/usr/bin

  2. 像这样重命名 Xcode 的 git:

    sudo mv ./git ./git-xcode-usr-bin

  3. 链接我自己的 git,它是通过自制软件安装的:

    sudo ln -s /usr/local/bin/git ./git

我对/usr/bin/git做了同样的事情

这将自动链接/usr/local/Cellar/git/1.8.0/bin/git(因为我目前使用的是 git 1.8.0)

当然,这可能会导致其他一些问题,例如当我将来升级自制软件的 verion git 时,它对我不起作用:(然后我必须建立一个新的链接。

我这样做是因为我想在这里解决我自己的问题13177203。在搜索StackOverFlow很长时间后,我终于得到了这个解决方案。

如果您使用的是鱼壳而不是 bash,您可以通过将以下内容添加到 ~/.config/fish/config.fish 来指向您喜欢的 git 二进制文件。

function git
  /usr/local/bin/git $argv; 
end

最新更新