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

时间:2013-05-20 12:09:37

标签: svn build dependency-management build-script build-system

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

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

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

由于各种原因,我想到的一些选项令人难以接受:

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

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

1 个答案:

答案 0 :(得分:15)

SVNBook救援!

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

    SVNBook | --config-option command-line reference

      

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

    以下是示例命令行:

    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 in   用户的主目录)。