【发布时间】:2012-01-21 16:58:07
【问题描述】:
目前我们使用的是 SVN。 我想开始使用 GitHub,但一个绝对的要求是我们需要像我们目前拥有的那样对代码进行预提交(premerge)验证。 GitHub 是否支持 precommithooks(premergehooks)?
我们是一个由 5 名开发人员组成的团队。我们达成协议,所有代码(JavaScript)都应该通过类似 JSLint 的验证。自愿验证已被证明是行不通的,因为它很容易被遗忘。我们如何确保其他人可以使用的代码可以保证通过 JSLint(或类似)进行验证?
【问题讨论】:
-
我知道这一点,我知道 git 支持 precommithooks。所以迁移到 git 不会成为问题,但除非我们可以使用 github,否则我们不会这样做。
-
git 中的 precommit 钩子将在您的机器上运行,如果它们停止提交,则没有机会将未经验证的代码推送到 github
-
这对我来说似乎很奇怪。肯定是 github 服务器也需要进行验证,否则总有办法绕过 precommithook
-
// , 你相信你的开发者不会故意绕过 pre-commit 钩子吗?
-
一种解决方案可能是向获取提交信息的侦听器发送一个 webhook 帖子,对其进行验证,如果它失败,则从 github 中删除提交......然后让提交者感到羞耻:D