Git不能在服务器上运行,而托管服务提供商则说它确实如此

时间:2015-01-25 18:43:11

标签: git ssh githooks

我想使用这个工作流程(我也成功地将它与我的其他项目一起使用): How to push to both GitHub and live server from local repository?

现在我在不同的托管服务提供商上有一个新项目,他们说他们确实有GIT,但每当我使用ssh连接我的bach到服务器时,我都不能使用git - “git:command not found”。

托管支持给了我这个答案: “要使用它,需要指定git的路径,即/ usr / local / cpanel / 3rdparty / bin / git”。

我实际上不明白该怎么做(我不是cmd用户)。

或者是否有另一种方法可以在root中创建裸git并使用post-hook将其推送到服务器上的公共位置?

由于

2 个答案:

答案 0 :(得分:0)

您必须在远程用户路径中拥有git。由于您的提供商建议您必须指定完整路径,因此情况并非如此。修改登录shell的shell配置以在PATH变量中包含git。

答案 1 :(得分:0)

这个答案都适用于在远程服务器上运行的命令,例如通过SSH。

  

托管支持给了我这个答案:"要使用它,需要指定git的路径,即/ usr / local / cpanel / 3rdparty / bin / git"。

使用完整路径运行git,例如

/usr/local/cpanel/3rdparty/bin/git fetch

而不是git fetch,或将该目录添加到您的路径中,例如

export PATH=$PATH:/usr/local/cpanel/3rdparty/bin
git fetch

如果您使用第二个选项,您可能需要将export命令添加到shell配置中,这样您就不必每次都输入它。

有关如何执行此操作的详细信息因shell而异。假设您在远程计算机上使用Bash,请尝试将该行添加到主目录中的.bash_profile文件中:

echo export PATH=$PATH:/usr/local/cpanel/3rdparty/bin >> ~/.bash_profile

然后注销并重新登录,看看git是否有效。

如果没有.bash_profile文件,上面的命令将自动创建它。