从远程服务器连接 SVN

从远程服务器连接 SVN

我已经在 assembla 存储库中托管了我的存储库并且它运行良好。现在我想编写一个可以自动执行构建过程的脚本:1. 从 assembla 存储库中获取代码 2. 进行转储并将其复制到我的 Web 服务器上。

我从网络状态研究发现,使用像 svn co svn+ssh:// 这样的命令[电子邮件保护]/主页/svn/测试

我认为我需要在我的服务器上打开 Shell 并输入这些命令,但我的服务器管理员已禁用 shell。我尝试使用 exec 从 php 运行相同的命令,管理员也已禁用它。(我正在使用共享主机并希望使用这些简单步骤进行自动部署。我不想在此过程中使用我的本地系统)

现在我不确定即使我打开了服务器的 shell 访问权限,这些像 svn 这样的命令是否能在那里工作,因为我的服务器上没有安装 SVN(它安装在 assembla 上)。

如果对此内容需要更多解释或我理解错了,请告诉我。

我是新手,所以请详细回答:) 提前谢谢 Ace

答案1

如果您尝试在没有 shell 访问权限的情况下从您的网络主机服务器获取颠覆,这几乎是不可能的。

你可以选择:

  1. 切换到提供 shell 访问的网络主机提供商,如果没有 svn 命令(大多数网络托管提供商都会在其服务器上有此命令),则从源代码进行编译。
  2. 切换到具有根访问权限的 VPS,这样您就可以做任何您想做的事情
  3. 只需将您的 PC 用作代理即可。您可以运行svn checkout,然后运行tar目录并将其 POST 或 PUT 到您的网络主机服务器(使用curl)。

答案2

为此,您需要获取一个虚拟专用服务器 (VPS),然后可以在其上运行 shell 命令。

如果您要在共享网络主机上获取 shell 访问权限,则需要安装 Subversion(在基于 Debian 的操作系统(如 Ubuntu)上,安装方式为:apt-get install subversion)。

答案3

你确定你的访问方式是 svn+ssh:// 吗?也可能是通过 http://

尝试运行 svn co http://< 你的 assembla auth + url >

如果您没有 Web 服务器上的 shell 访问权限,那么下载源代码几乎是不可能的,更不用说设置自动构建过程了。

对于您来说,下一步就是获取一个实际上具有 shell 的 Web 服务器并从那里开始。

相关内容