我已经安装了 XCode,因此 git 也在那里。由于我想使用自制软件安装更新版本的 git。
但是由于我的 PATH 看起来像这样,因此从未调用过 git 的自制版本
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
这意味着/usr/bin/git
总是在之前调用/usr/local/bin/git
。
有没有办法在不改变 PATH 的情况下改变它?
Xcode 实际上使用的是存储在/Applications/Xcode.app/Contents/Developer/usr/bin
. /usr/bin
当您安装命令行工具作为 Xcode 安装的一部分时,将安装相同版本的 GIT 。因此,您将无法更改 Xcode 正在使用的内容(除非您愿意修改 Xcode 包的内容)。如果从终端应用程序中,您想使用自制安装的 GIT,那么您有两个选择:
/usr/local/bin/git ...
对于这种情况,您可以创建一个别名alias mgit=/usr/local/bin/git
,然后mgit ...
从终端使用PATH=/usr/local/bin:$PATH
您的.bashrc
或.zshrc
使用 zsh 文件(或每次在命令行启动终端时)。由于 Xcode 硬编码了自己安装的 git 版本,因此/Applications/Xcode.app/Contents/Developer/usr/bin/git
我设法使用了这个变通技巧:
切换到 Xcode 目录:
cd /Applications/Xcode.app/Contents/Developer/usr/bin
像这样重命名 Xcode 的 git:
sudo mv ./git ./git-xcode-usr-bin
链接通过自制软件安装的我自己的 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)
当然这可能会导致其他一些问题,例如当我将来升级自制软件的版本 git 时,它对我不起作用:( 然后我必须创建一个新链接。
我这样做是因为我想在这里解决我自己的问题
如果您使用的是fish shell而不是 bash,则可以通过将以下内容添加到~/.config/fish/config.fish
.
function git
/usr/local/bin/git $argv;
end