我不太熟悉 Linux,但遇到了以下问题。
我已通过 SSH 进入 Bluehost 服务器上的 Linux shell 并执行以下操作:
git --version
我发现我有一个非常旧的 git 版本:
-jailshell-4.1$ git --version
git version 1.7.11.3
所以我按照这个指南安装了新版本的胃肠道疾病在我的服务器上: http://willjackson.org/blog/installing-git-bluehost-shared-hosting
所以我创建了。当地的目录进入我的主目录,并在其中创建源码我下载最新版本的目录胃肠道疾病正在做:
wget --no-check-certificate https://github.com/git/git/archive/master.zip
我已经解压了这个 zip 文件,并且我正确地完成了制作和进行安装声明。我没有得到任何错误。
问题是git --version我仍然得到旧的git 版本 1.7.11.3而不是新安装的版本。
首先我修改了.bashrc文件末尾放置此行:
export PATH=$HOME/.local/bin:$HOME/.local/usr/bin:$PATH
但阅读上一个教程的评论时我读到:
这实际上并不像看起来的那样有效... Bluehost 默认在 /usr/bin/git 中安装了 git(正如 David Lichtenberg 在下面观察到的那样)。您可以通过从命令行运行 which git 来验证这一点。
问题是 Bluehost 提供的 git 版本太旧了(1.7.11.3)。按照上述步骤操作后,运行 git --version 仍会报告 git 版本 1.7.11.3,这意味着您刚刚下载的 git 最新版本不是正在使用的版本。
为了解决这个问题,你需要将 .bashrc 中的导出(你在步骤 4 中输入的)更改为:
导出 PATH="$HOME/.local/src/git-master:$PATH"
然后只需退出并重新登录即可。运行 which git 应该返回 /[home]/[username]/.local/src/git-master/git。
所以我改变了我的.bashrc按照此评论中的建议归档,所以现在我的.bashrc文件包含:
# .bashrc
# User specific aliases and functions
# Source global definitions
# if [ -f /etc/bashrc ]; then
# . /etc/bashrc
#fi
export PATH="$HOME/.local/src/git-master:$PATH"
我认为这个新出口版本表示使用安装在$HOME/.local/src/git-master文件夹。
在哪里家是/home6/onofrior(我的服务器的主目录)。
然后我退出 ssh 会话并再次登录。
问题是git --version我仍然得到旧的git 版本 1.7.11.3而不是最后安装的,事实上这是输出:
-jailshell-4.1$ git --version
git version 1.7.11.3
如果我直接执行./git --version在正确安装新版本 GIT 的目录中,我获得了与上一个 git 版本相关的预期输出:
-jailshell-4.1$ pwd
/home6/onofrior/.local/src/git-master
-jailshell-4.1$ ./git --version
git version 2.10.0.GIT
所以这意味着最新版本的 GIT 已正确安装到我的/home6/onofrior/.local/src/git-master目录。
我认为问题在于.bashrc文件或与如何指定 shell 必须使用的 GIT 版本相关的内容,
也许问题是 Bluehost 使用了这个奇怪的jailshell-4.1$或者类似的东西?
为什么?出了什么问题?我遗漏了什么?我该如何解决这个问题?
谢谢
答案1
默认情况下不会读取 .bashrc 文件。但是,会读取 .bash_profile,您可以从那里获取 .bashrc。
运行以下命令:
cd ~/
vi .bash_profile
点击“Insert”键i
并输入,source ~/.bashrc
然后esc
按下键,接着:wq
退出会话,重新登录,然后输入git --version
你应该可以走了