2012-04-26 18 views
28

所以我开始使用Git和this workflow来构建一个个人网站(主要用于测试和学习Git),我正在使用Xampp在笔记本电脑上本地开发它。在共享托管计划中使用Git

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

我想部署网站和任何更新到该网络服务器,但我想知道,只有FTP访问Git是否可能?如果不是,更新我的网站会是一个明智的方法吗?通过Filezilla手动拖放文件可能会有点乏味。

+2

http://stackoverflow.com/questions/2950107/git-push-into-production-ftp – Kevin 2012-04-26 12:36:24

+1

如果您的主机不允许使用SSH或SFTP,请查找其他主机。 (非匿名)FTP不安全,基本已经过时。 – Wyzard 2012-04-26 12:36:42

+0

不知道SFTP,会看看他们是否支持。至少SSH不受支持。 主持人并不那么特别,便宜也。每年只有35欧元,但对于我所做的事情,这已经足够了。 – Gladen 2012-04-26 13:22:00

回答

32

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

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

在你的情况下,自动化发布过程的一个很好的选择是用你最喜欢的编程语言(Ruby,Python,Bash ...)创建一个简单的部署脚本,它从你的git仓库中加载已更改文件的列表并通过FTP上传这些文件。

git-ftp一个简单的搜索发现,目前已经有两个项目,似乎做什么,我建议:

+0

感谢您的快速回答!太糟糕了,我不能直接使用Git ..我会在你提到的那些脚本上采取掠夺,这似乎正是我所期待的。 – Gladen 2012-04-26 12:48:51

+0

upvoted for git-ftp建议 – GusDeCooL 2013-09-17 19:04:44

+0

“如果您没有对远程服务器的SSH访问权限,并且主机提供商不提供git deploy功能,那么您将无法直接使用git进行部署。”只要我的神奇思想...... – 2015-11-26 18:10:36

1

如果你是在一个共享的托管计划,它不是一个好主意,因为你将有空间和带宽限制。你可以看出来的其他选项,如github或者如果你想有一个私人托管,有bitbucket

0

我还听说/阅读(但尚未尝试过)共享的主机git的可用性是资源密集型的,所以管理员回避允许了......

但如果你想尝试...

http://joemaller.com/908/how-to-install-git-on-a-shared-host/#hosting

+1

在大多数共享服务器上,人们无法访问gcc,因此在这种情况下,您提供的链接将不会有用。 – 2016-09-25 13:32:44

0

也许想不同的主机设置?

  1. 在VPS上你有更多的自由,但你需要自己设置一切。
  2. 在云PaaS上,您将获得不错的技术,但支付更多。
  3. 如上所述:使用ftp部署选项的私人回购托管服务器也可能工作。

对我来说,最好的生产力是最重要的。比较网站托管的成本和网站开发的成本。

0

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

0

这个问题可能是旧的,但有一个共享的虚拟主机它提供git的部署选项和SSH访问git的推/拉等:githoster.com

还是有一些脚本,你可以在谷歌搜索这会将你的github帐户与您的主机与git钩子。