Git通过有限的ssh推送到服务器

时间:2011-01-12 23:18:08

标签: git codeigniter ssh shared-hosting

我正在使用GitHub来跟踪我的源代码。虽然我单独工作,但如果它不起作用,测试新功能和回滚真的很方便。所以,我在我的Windows机器上安装了Git Bash,然后提交&代码准备好后推送到github。

现在,我想更进一步,从同一个终端部署。我的共享主机具有SSH访问权限,但有点受限。他们告诉我他们有Git,但只是作为客户,阅读回购。我不知道这意味着什么。

我试图在实时服务器上创建一个repo,在我的机器上将其添加为远程服务器然后只是'git push remote live'但是这不起作用。

每当我在实时服务器上输入'git init'时它返回:

warning: templates not found /usr/share//git-core/templates/

Initialized empty Git repository in /www/example.com.ar/htdocs/example.com.ar/.git/

我不能'git clone'或'git pull'或其他任何东西!

有什么提示可以给我吗?我只是厌倦了通过FTP拖放我的文件夹,它只是感觉错了!

提前致谢

3 个答案:

答案 0 :(得分:3)

GitHub是git服务器

您和您的托管服务器只会充当客户。

您需要做的就是(如果正确安装了git)登录到您的ssh会话。

在终端中键入以下内容

git clone git://github.com/<username>/<name of repo>.git folder_name

将git repo克隆到folder_name

要获取已推送到实时服务器的更新,您需要再次登录ssh并git pull

答案 1 :(得分:2)

答案 2 :(得分:1)

有一个git服务器可以处理传入的git请求,因此您无需通过SSH访问它。它不是很受欢迎(相对于客户而言)并且您不需要它。 git客户端应该是您所需要的。听起来他们的安装还有其他问题。

也许其他人可以在这里讨好并让git在这个有限的环境中为你工作,但是当有那么多便宜且非常灵活的主机在那里时,可能更容易切换到其中一个并解决整个色域所有问题都在一个。

Dreamhost,MediaTemple,RackspaceCloud,Slicehost和(当然)Amazon EC2只是一些值得一试的实体托管服务。