Svn 在subversion中以不同用户身份提交而不提示输入密码的方法

Svn 在subversion中以不同用户身份提交而不提示输入密码的方法,svn,Svn,我们正在开发一个系统,在提交到分支之前进行自动开发人员构建和测试,以便分支始终处于良好状态。公共帐户从开发人员那里获取补丁,构建、测试并提交。整个过程在单独的机器池中进行。问题是,有没有一种方法可以在没有svn提示输入密码的情况下以不同的用户身份提交代码。我们使用subversion 1.6和http访问方法 谢谢 提交使用ssh和密钥不会提示输入密码。请在此处检查答案:使用ssh提交密钥不会提示输入密码。请在此处检查答案:您可以使用--username和--password参数传递用户名和密码

我们正在开发一个系统,在提交到分支之前进行自动开发人员构建和测试,以便分支始终处于良好状态。公共帐户从开发人员那里获取补丁,构建、测试并提交。整个过程在单独的机器池中进行。问题是,有没有一种方法可以在没有svn提示输入密码的情况下以不同的用户身份提交代码。我们使用subversion 1.6和http访问方法


谢谢

提交使用ssh和密钥不会提示输入密码。请在此处检查答案:

使用ssh提交密钥不会提示输入密码。请在此处检查答案:

您可以使用
--username
--password
参数传递用户名和密码

然而,他们可能是一个更好的方式

我认为运行测试并执行提交的系统可以在没有密码的情况下自行提交(或者使用
--password
参数,因为它知道自己的密码)

您可以让系统自行提交更改,然后通过更改特定修订的
svn:author
revision属性来修改提交用户的名称

$ svn ps --revprop -r $revision svn:author $patch_submitter $repository_url
您需要做的唯一一件事是在存储库中设置一个pre-revprop change钩子。这是一个安全问题,因为您不希望用户随意更改修订属性。主要有三种类型:
svn:log
,这是用户的提交消息;
svn:author
,以及
svn:date
这是提交日期。由于这些属性没有版本控制,因此无法捕获这些属性是否已更改。因此,钩子必须在那里才能更改修订属性

然而,设置一个钩子并不难。只需检查要进行更改的用户是否是修补程序系统。

您可以使用
--username
--password
参数来传递用户名和密码

然而,他们可能是一个更好的方式

我认为运行测试并执行提交的系统可以在没有密码的情况下自行提交(或者使用
--password
参数,因为它知道自己的密码)

您可以让系统自行提交更改,然后通过更改特定修订的
svn:author
revision属性来修改提交用户的名称

$ svn ps --revprop -r $revision svn:author $patch_submitter $repository_url
您需要做的唯一一件事是在存储库中设置一个pre-revprop change钩子。这是一个安全问题,因为您不希望用户随意更改修订属性。主要有三种类型:
svn:log
,这是用户的提交消息;
svn:author
,以及
svn:date
这是提交日期。由于这些属性没有版本控制,因此无法捕获这些属性是否已更改。因此,钩子必须在那里才能更改修订属性


然而,设置一个钩子并不难。只需检查想要进行更改的用户是否是修补程序系统。

谢谢。但不幸的是,我工作的地方只允许使用http/https方法。谢谢。但不幸的是,我工作的地方只允许使用http/https方法。谢谢David。是的,系统可以在没有密码的情况下自行提交。改变svn:作者似乎是一个可行的解决方案。谢谢大卫。是的,系统可以在没有密码的情况下自行提交。改变svn:author对我来说似乎是一个可行的解决方案。