在发布之前的几天,我们希望能够阻止开发人员将文件提交到SubVersion分支,除非团队负责人审核并批准了更改(在这种情况下,他们会进行临时更改以允许此)。
之前我们使用的是ClearCase,其中相对容易。
由于svn:lock命令仅适用于每个文件,因此我们不确定是否可以在SubVersion中模拟此行为。
你做什么?
答案 0 :(得分:13)
横向思考 - 为什么不在您想要“锁定”它的位置创建一个分支,只在构建/发布过程中检查该修订号。
然后开发人员仍然可以登记到主干(或他们正在处理的任何其他分支),如果团队负责人批准发布的更改,那么他们可以合并到分支中。 当然,这实际上并不“锁定”发布分支,但至少可以在必要时轻松跟踪/撤消更改,并且不会阻止人们工作。开发人员来源仍将指向他们正在处理的分支/主干,而不是新发布分支。
在SVN中创建分支非常便宜且简单(我相信)。
答案 1 :(得分:8)
您可以查看GUI svn客户端,它们通常具有比命令行更丰富的接口/功能集。例如,我正在使用 TortoiseSVN ,其中包含获取锁定/解除锁定选项,适用于以递归方式锁定所选文件夹中的所有文件。 顺便说一下,它还有一个方便的选项,可以制作标签/分支并将其切换为一个动作。
答案 2 :(得分:3)
您可以在服务器上添加预提交挂钩,检查提交目标是否包含已关闭的分支,并且可能是日志消息中的关键字,以绕过此检查。
答案 3 :(得分:0)
我们所做的是将分支移动到标记,并且只能以只读方式访问标记。