Svn 代表某人进行颠覆

Svn 代表某人进行颠覆,svn,Svn,有没有办法代表某人签入更改?例如,我希望通过某种构建服务器处理更改,然后让构建服务器为用户检入 这可行吗?您可以在命令行中指定用户和密码: svn commit --username user --password pass [files] 您是否正在考虑使用特定的生成服务器?许多服务器运行时,用户执行对存储库的提交,CI服务器验证构建是否仍然有效(并对许多其他指标执行测试和报告)。我偏爱自己 您可以在svn服务器上添加一个脚本,该脚本将在用户签入某些内容时触发。如果这些钩子不满足钩子脚本的要

有没有办法代表某人签入更改?例如,我希望通过某种构建服务器处理更改,然后让构建服务器为用户检入


这可行吗?

您可以在命令行中指定用户和密码:

svn commit --username user --password pass [files]
您是否正在考虑使用特定的生成服务器?许多服务器运行时,用户执行对存储库的提交,CI服务器验证构建是否仍然有效(并对许多其他指标执行测试和报告)。我偏爱自己

您可以在svn服务器上添加一个脚本,该脚本将在用户签入某些内容时触发。如果这些钩子不满足钩子脚本的要求,您可以使用它们来防止提交

我不建议使用更长的过程,比如在提交之前构建源代码。签入更改所花的时间越长,其他人稍后发生合并冲突的可能性就越大


开发人员无论如何都应该在签入之前编译/测试他们的更改,这将为更改提供一定程度的可靠性(对我来说是有效的)。一个连续的构建应该在签入后运行,以检查所有的更改是否有效并运行单元测试。如果在此阶段构建失败,那么负责的用户可以选择修复更改或回滚更改。

我不知道代表某人直接提交的直接方法……但是如果您编写了revprop之前的更改挂钩,您可能可以通过revprop编辑来完成。见:

除非存在pre-revprop更改挂钩,否则将禁用修订特性编辑。其思想是脚本应根据正在编辑的属性、用户等确定是否允许编辑属性

您可以编写一个pre-revprop change钩子,该钩子只允许生成服务器用于凭据的某个管理用户更改username属性,并在提交后更改用户名

  • 生成服务器为某人的提交运行生成
  • 所有测试都通过,因此它会将更改合并/提交到另一个分支/repo
  • 编辑该提交的revprop用户名

  • 在Subversion中,修订属性没有版本控制,所以它就像总是来自该用户一样。这似乎很合理,但如果这是个坏主意,有人会纠正我。只需确保您的钩子完全符合您的要求—创建一个测试存储库,对其进行测试和彻底测试。

    我相信您必须获得这些人的登录信息。我们有一些设置。一种是TFS,其中所有内容都是“提交”的,只有在执行构建和单元测试之后才签入。然后我们有一个滚动构建,这就是你的建议。我宁愿在签入之前进行测试,以确保存储库始终处于构建状态。这是一个争论。在完成了这两项工作之后,我可以说,它并没有被“拉长”。大多数项目只需要一两分钟来构建,一两分钟来测试。还有一种观点认为,您不必依赖开发人员在他们签入之前确保测试通过。。。“通常情况下是这样的。”史提芬,我将把签入前的构建/测试看作更多的冒烟测试。也许预提交钩子适合您的需要。