在提交代码之前svn senior Developer确认

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在提交代码之前svn senior Developer确认相关的知识,希望对你有一定的参考价值。

我想通过高级开发人员检查初级开发人员的代码,然后再将代码提交给SVN。如何使用SVN进行管理?我的观点是高级开发人员通知初级开发人员想要提交他们的代码(例如使用电子邮件),并在他们确认后,代码提交。我们的SVN在Windows服务器上

谢谢。

答案

Subversion不直接支持“代码审查”模型,就像您可能习惯使用GitHub Pull Request一样。有一些附加工具可能会有所帮助,但我不能推荐任何,因为我从来没有使用它们。

你可能想要尝试的是让开发人员在他们自己的分支机构工作并承诺,然后要求高级开发人员审查,然后合并到中央主干或其他分支。

另一答案

你可以让你的初级开发人员只在分支机构工作,并阻止他们承诺到主干。您可以通过在SVN服务器上设置特定repo路径的权限,或者通过编写预提交挂钩来实现。

如果您使用的是VisualSVN Server,则可以在此对话框中进行配置:

VisualSVN Server Path Properties

通过设置覆盖权限,我在这个例子中被欺骗了。对于较大的团队,您需要一些更具可伸缩性的东西,您可以在repo上设置只读权限,然后为开发人员显式授予对/ branches /的访问权限,为高级开发人员授予/ trunk /访问权限。

另一答案

有两种可能性:

  1. 您可以使用分支和SVN中的--reintegrate选项将它们自动合并回主干。只要遵循一些规则(你可以弯曲它们,你可以打破它们,但你会遇到困难),这种方法效果很好: 永远不要做任何子树合并(合并子目录;仅在主干或分支级别合并) 永远不要在不同的分支之间合并,除了你分支的路径(通常这将是主干)。所以没有同事的交叉分支。 始终将所有提交从分支合并到主干,并始终完全同步您的分支从主干。所以没有采摘樱桃 遵循这些规则,您可以轻松地合并并保持您的行李箱清洁,而无需使用任何修订号。有关详细信息,请参阅svnbook/merging。 这也意味着集成合并(从developerbranch到trunk)始终没有冲突,因为所有更改(在主干中)通常都是由开发人员事先合并的。如果trunk维护者在合并期间遇到冲突,他会拒绝该分支并告诉开发人员同步来自trunk的合并以解决他的分支上的这个冲突 你应该保护后备箱不受初级开发人员的委托,但对整个过程来说既不必要也不重要 另请参阅https://stackoverflow.com/a/7387277/23264以获取更多信息(带有一些花哨的ascii艺术)
  2. 你可以接受人们发送的补丁。这是一个非常手动的过程,但这取决于你有多少初级开发人员。请注意,虽然听起来不可能,整个svn开发过程的工作原理是将补丁发送到邮件列表,直到您发送足够的内容来获得提交者权限。

以上是关于在提交代码之前svn senior Developer确认的主要内容,如果未能解决你的问题,请参考以下文章

Git开发分支使用与管理规范

Git主分支和副分支代码相同

svn 提交时总提示一下文件冲突

使用SVN管理项目,未提交代码之前使用了revert误删修改好的代码解决方法(IDEA编译器)

phpstorm svn怎样提交

svn 更新代码冲突 怎么编辑冲突代码 解决