代码之家  ›  专栏  ›  技术社区  ›  Edmhs

共享主机中的Subversion签出?

  •  2
  • Edmhs  · 技术社区  · 14 年前

    我知道共享主机不允许安装SVN。

    我有一个问题,那就是如何最好地将网站从存储库复制到共享宿主。

    现在:

    我的存储库位于其他VP上。

    我先签出到我的计算机,然后将所有内容复制到共享主机。

    如何通过一个步骤将数据从repo复制到宿主?

    4 回复  |  直到 14 年前
        1
  •  2
  •   nonot1    14 年前

    如果您有目标Web服务器的ssh访问权 ,给 rsync scp 一看:

    http://en.wikipedia.org/wiki/Rsync

    http://en.wikipedia.org/wiki/Secure_copy

    我不建议在生产Web服务器上安装Subversion服务器(SVNServer或通过Apache)。我也不建议只是将工作副本复制或签出到Web服务器上。安全问题太多。

    基本上,您要做的是在临时区域中生成站点的本地副本,然后将其rsync(或scp)到生产服务器。

    您可以手动执行此操作,或者更好的做法是制作一个小的“部署站点”shell脚本,该脚本将:

    1. svn export 要部署到干净的本地文件夹中的版本/标记。
    2. 远程同步 将此文件夹发送到生产服务器。

    希望这有帮助…祝你好运!:)

        2
  •  2
  •   Andrew    14 年前

    如果我正确理解您的情况,您希望从一台计算机上的Subversion存储库签出或更新到您在Godaddy上的宿主帐户,并且您具有对Godaddy的ssh访问权。如果您不能或不希望在共享主机帐户上有一个subversion客户机从ssh命令行使用,那么可以尝试使用 sshfs 从其他机器。然后,您可以将Godaddy Web空间视为另一个目录,并相应地签出或更新存储库。

        3
  •  0
  •   Dave Bacher    14 年前

    在您的计算机上(假设您有Linux/OS X命令行):

    svn export <your repository> my-export
    tar -cf - -C my-export . | ssh user@godaddy-host 'tar -C my-web-app-dir -xf -'
    

    首先,将要复制的内容导出到Web主机。 svn export 比直接结账要好,因为它不会复制到 .svn 目录(潜在的安全漏洞)。

    接下来,使用tar捆绑导出目录,并通过管道将其传输到ssh会话,以便在另一端将其解开。

        4
  •  0
  •   brokenbeatnik    14 年前

    查看具有远程部署解决方案的颠覆主机。我的公司, Projectlocker 是一个,但是其他的,比如豆茎,在这个领域也有一些解决方案。支持此功能的主机允许您通过诸如scp或sftp之类的协议将代码从主机部署到远程服务器,或者在每次提交时自动部署(如果您愿意)。