如何从命令行配置SVN HTTP代理?

Wil*_*yne 11 svn build build-system build-script dependency-management

我编写了构建环境的脚本.(因此,如果构建过程发现自己在干净的图像上运行,则构建过程可以自行引导).

作为此过程的一部分,从公共SVN存储库检索某些依赖项.

构建机器位于代理后面,因此我需要配置SVN以使用代理.

由于各种原因,立即想到的几个选项是不可接受的:

  • 我可以手动编辑〜/ .subversion/servers文件,但我宁愿将构建过程保持为自包含和尽可能自动化.
  • 或者,我可以使用内部"依赖"存储库"代理"各种公共subversion存储库,但这会增加需要维护的移动部件的数量.
  • 最后,我可以编写一个脚本来检查配置文件并对其进行修改(如果需要),但这对于构建过程中应该是一个微不足道的部分来说似乎有些过分.

理想情况下,我应该能够从命令行指定代理,但这是不可能的.解决这个问题的正确方法是什么?

bah*_*rep 15

SVNBook来救援!

  1. 正如您已经提到的,您可以将SVN配置选项添加到svn命令行客户端.

    SVNBook | --config-option命令行参考.

    在命令的持续时间内设置运行时配置选项的值.CONFSPEC是一个字符串,它指定您要分配的配置选项命名空间,名称和值,格式为FILE:SECTION:OPTION = [VALUE].在此语法中,FILE和SECTION分别是运行时配置文件(配置或服务器)及其部分,其中包含您希望更改其值的选项.当然,OPTION是选项本身,VALUE是您希望分配给选项的值(如果有的话).例如,要暂时禁用自动属性设置功能,请使用--config-option = config:miscellany:enable-auto-props = no.您可以多次使用此选项同时更改多个选项值.

    以下是示例命令行:

    svn checkout ^
    --config-option servers:global:http-proxy-host=<PROXY-HOST> ^
    --config-option servers:global:http-proxy-port=<PORT> <REPO-URL> <LWC-DIR>

  2. 或者用于--config-dirsvn命令行客户端指向自定义配置文件.

    --config-dir DIR

    指示Subversion从指定目录而不是默认位置(用户主目录中的.subversion)读取配置信息.

  • 我花了一点时间才弄明白,但使用的完整命令是:svn checkout --config-option servers:global:http-proxy-host = <PROXY-HOST> --config-option servers:global:http -proxy-port = <PORT> <REPO-URL> <LWC-DIR> (2认同)