31

所以我开始使用 Git 和这个工作流程来制作一个个人网站(主要用于测试和学习 Git),我正在使用 Xampp 在我的笔记本电脑上本地开发它。

但现在我想公开这个网站并将其上传到我的网络服务器。问题是,我使用共享托管计划,这意味着我只能通过 FTP 访问我的网站目录。不能使用 SSH 或安装 Git 或任何东西..

我想部署该网站以及对该网络服务器的任何更新,但我想知道仅通过 FTP 访问的 Git 是否可行?如果没有,更新我的网站的建议方法是什么?通过 Filezilla 手动拖放文件会有点乏味。

4

5 回答 5

35

如果您没有远程服务器的 SSH 访问权限,并且托管服务提供商不提供 git deploy 功能,您将无法直接使用 git 进行部署。

但是,无论远程选项如何,跟踪源代码总是一个好主意。

在您的情况下,自动化发布过程的一个很好的替代方法是使用您最喜欢的编程语言(Ruby、Python、Bash ...)创建一个简单的部署脚本,该脚本从您的 git 存储库加载更改的文件列表并执行上传通过这些文件的 FTP。

对git-ftp的简单搜索显示已经有两个项目似乎按照我的建议进行:

于 2012-04-26T12:37:17.223 回答
1

如果您在共享托管计划中,那么托管自己的 git 服务器不是一个好主意,因为您将同时受到空间和带宽的限制。您可以寻找其他选项,例如github,或者如果您想拥有私人托管,可以使用bitbucket

于 2012-04-26T12:49:11.203 回答
1

也许考虑不同的托管设置?

  1. 在 VPS 上你有更多的自由,但你需要自己设置一切。
  2. 在云 PaaS 上,您将获得出色的技术,但需要支付更多费用。
  3. 如上所述:具有 ftp 部署选项的私有 repo 主机也可能工作。

对我来说,最好的生产力是最重要的。将网络托管成本与网络开发成本进行比较。

于 2012-10-15T20:22:31.557 回答
0

如果服务器上安装了 git(例如<?php $last_line = system('git --version', $retval); ?>),但您没有 SSH 访问权限,不妨试试php-git-bundle

于 2013-10-07T11:06:18.757 回答
0

这个问题可能很老,但是有一个共享的虚拟主机,它提供了 git 部署选项和对 git pull/push 等的 SSH 访问:githoster.com

或者您可以在 google 中搜索一些脚本,这些脚本将使用 git 挂钩将您的 github 帐户链接到您的主机。

于 2014-07-22T18:08:09.530 回答