2016-04-14 102 views
0

我的团队开始在我们的SVN仓库中使用Phabricator。如何强制用户通过Arcanist执行SVN提交?

理想情况下,每个人都会遵循arc diff - >arc patch - >arc commit工作流程,如果没有通过代码审查就不会提交任何内容。

我们之前的工作流程只是提交更改并发送电子邮件进行审阅,因此每个人都习惯于在审核前提交更改。我们的实际工作流程是:svn commit - >arc diff - >保持提交和区分,直到CR通过

如何停止存储库接受未通过arc diffarc patcharc commit工作流的提交?

+0

提问并回答:http://stackoverflow.com/questions/25662723/phabricator-restrict-git-push – CEPA

回答

2

Phabricator restrict git push的接受答案中,声称只有在您的存储库由Phabricator托管时才能执行此操作。虽然在这种情况下它会容易得多,因为它可以通过Herald进行配置,所以应该可以为你的svn仓库编写一个预先提交的钩子来使用管道(或者可能是arc)来检查匹配尝试提交。 我相信弧会添加一条线到提交消息Differential Revision: <URL>,所以对于初学者来说,如果缺少提交可以被拒绝。然后可以使用phid.lookupdifferential.query来检查URL末尾的差异修订,以检查状态是否为“已批准”。