Windows中的Global Subversion SSH配置/在Windows上将Subversion项目检出为SYSTEM

时间:2012-11-26 13:53:44

标签: windows svn ssh windows-server-2003

我正在尝试通过SVN + SSH从Windows Server 2003计算机设置计划的Subversion提交作为任务。我希望将提交脚本作为SYSTEM用户执行。所以我猜,为了工作,我需要将存储库签出为SYSTEM,但到目前为止我无法实现它。

我已经能够通过SSH与我自己的用户实现上述目标。我做了以下事情:

  1. 我在本地的subversion配置中添加了[tunnels]实体:

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

  2. 在运行Subversion的服务器上添加了authorized_keys文件的密钥

  3. 我用以下脚本检查了存储库:

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

  4. 我现在想为SYSTEM用户重现上述步骤,以便稍后能够运行预定的提交。我面临的问题是我不知道如何将存储库检出为SYSTEM,因为:

    1. 我不知道用于将存储库签出为SYSTEM
    2. 的语法
    3. 我不知道全局(或SYSTEM)的Subversion配置存储在Windows Server 2003上的哪个位置。我已经尝试过:C:\Documents and Settings\Default User\Application Data\SubversionC:\Documents and Settings\Administrator\Application Data\Subversion,但没有成功。
    4. 我也读过某个地方,我可能会将svn switch用于我想要的地方,但不知道如何svn switch作为SYSTEM。我还考虑为svn签出编写脚本或者将它们作为SYSTEM切换和运行,但是我仍然需要全局SVN配置来添加my_key.ppk

      我希望上面的描述足够清楚。我一直在努力与它斗争很长一段时间,我自己总结了一些问题。任何提示都赞赏。

2 个答案:

答案 0 :(得分:2)

作为一方,这似乎并非完全偏离主题:https://serverfault.com/q/9325/122307

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

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

答案 1 :(得分:0)

当提到--config-dir时,

@cxxl 真的回答了。我将尝试阐明问题

  

我猜,为了工作,我需要将存储库签出为SYSTEM

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

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

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

即你在LSA脚本下执行必须能够 *阅读工作副本文件(在任何其他真实本地用户下查看),也许写(无法回忆.svn dir权限的要求) *读取,因此,使用预定义和微调的Subversion的配置文件(隧道部分),可以是任何其他用户的配置

PS:swn switch更改工作副本的存储库的链接URL,与用户没有任何共同之处