全局Subversion Windows中的SSHconfiguration/在Windows上检出Subversion项目为SYSTEM

我试图通过SVN + SSH从Windows Server 2003计算机设置一个预定的Subversion提交作为一项任务。 我想提交脚本作为SYSTEM用户执行。 所以我猜测,为了这个工作,我也需要将系统信息库检出为SYSTEM,但目前为止还无法实现。

我已经能够通过SSH使用我自己的用户来完成上述任务。 我做了以下几点:

  1. 我在本地subversionconfiguration中添加了一个[tunnels]实体:

    ssh = plink.exe -i“C:/Keys/my_key.ppk”

  2. 将密钥添加到运行Subversion的服务器上的authorized_keys文件中

  3. 我用下面的脚本检出了存储库:

    svn co svn + ssh:// user @ server / path / to / repo / C:\ Local \ Project \ Path

我现在想重现SYSTEM用户的上述步骤,以便能够稍后运行计划的提交。 我面对的问题是我不知道如何检查作为系统的存储库,因为:

  1. 我不知道用来检出一个存储库为SYSTEM的语法
  2. 我不知道在Windows Server 2003上存储全局(或系统)Subversionconfiguration的位置。我已经试过了: C:\Documents and Settings\Default User\Application Data\SubversionC:\Documents and Settings\Administrator\Application Data\Subversion ,但没有成功。

我也读过一些地方,我可能可以使用svn switch为我想要的,但不知道如何svn switch为系统。 我也考虑编写脚本进行svn check-out或者将它们作为SYSTEM运行,但是我仍然需要全局的SVNconfiguration来添加my_key.ppk

我希望上面的描述足够清楚。 我一直在挣扎很长时间,自己也总结出了一些问题。 任何提示赞赏。

作为一个方面,这似乎并不完全是主题: https : //serverfault.com/q/9325/122307

这不是你的问题的真正答案,但它可以解决你的问题:为什么不使用svn <command> --config-dir ARGsvn <command> --config-option ARG

您可以像这样指定配置文件/选项,从而可以设置[隧道]。

@cxxl在提到--config-dir真的回答了问题。 我只是想解决一些问题

我猜,为了这个工作,我需要检查出库作为系统

错误和错误的猜测,因为存储在本地用户的身份验证数据不使用SSH身份验证的情况下,执行ssh远程身份验证。 每用户auth-dir

 \%AppData%\Subversion\auth>dir /W ... [svn.simple] [svn.ssl.client-passphrase] [svn.ssl.server] [svn.username] ... 

包含用于http | https | svn和基于证书的客户端身份验证的存储凭据 ,不包含与ssh相关的存储库

即你的LSA脚本下的执行必须能够*读取工作拷贝文件(在任何其他真正的本地用户检查),也许写(不能要求.svn目录权限)*读取,因此,使用预定义和罚款 -调整Subversion的配置文件(隧道部分),可以是任何其他用户的配置

PS: swn switch工作拷贝库变更链接的URL,与用户没有共同之处