我有一个场景,我希望有一些工具,我们那里,可以做到这一点。
我希望能够控制一个SVN结帐,而不被SSH‘in。这意味着,我将能够运行svn更新和stat的,而不必被SSH‘到服务器。是否有某种类型的网络接口,可以让我这样做?还是这只是我需要写的一次过?
谢谢。
好的,这是一个场景。这可能有助于澄清我的需要。
Foo公司和X公司如何向X公司的服务器推广代码?X公司是个简单的例子,我只是想不出如何才能让Foo。我知道我可以用系统调用编写一些自定义脚本,但我希望有一个打包的解决方案。
再次感谢。到目前为止还在读很棒的东西。
发布于 2009-08-11 02:50:00
完全可操作,并且在SVN书中有非常彻底的文档记录。
编辑:详细介绍一下: Subversion附带了一个apache模块mod_dav_svn
,它与apache的mod_dav
一起可以配置为在http/1.1 - ie svn list https://svn.my.domain/
上提供对任何或所有存储库的非常灵活和可配置的访问。
发布于 2009-08-11 04:13:53
如果您只是想查看存储库,那么像上面提到的websvn这样的简单工具可能会起作用。但是,如果您希望通过提交或从web浏览器中提取新的代码副本来管理结帐,则可以使用一些简单的方法,比如通过cgi应用程序在perl中使用系统调用。代码可以简单到将其填充到cgi中:
#! /usr/bin/perl -w
my @args = ("svn", "update", '/path/to/checkout');
system(@args) == 0 or die "system @args failed: $?";
发布于 2009-08-11 08:14:43
Subversion支持几种支持完全操作存储库的访问方法:
如果您想要执行结帐,您必须选择以上之一。所有这些都要求在客户端系统上有一个SVN客户端(命令行界面或像TortoiseSVN这样的图形用户界面)。
一些人建议的其他选择(WebSVN等)通常是PHP或Perl CGI应用程序,它们提供存储库的只读视图。有些将允许您导出整个目录,但它们不允许您执行适当的签出操作,您可以随后将更改签入。
还有一个post提交钩子选项,它将把存储库的签出副本保存在镜像目录中,您可以通过您的man服务器公开它,但是这实际上只是上面提到的CGI应用程序的一个糟糕的男人版本。
https://serverfault.com/questions/52532
复制相似问题