Gitolite:除了一个回购之外,只为所有人召集VREF

时间:2012-10-02 11:06:42

标签: gitolite

我有以下设置。我想检查提交是否具有某种提交消息格式(行限制等)。我想要所有的回购,但一两个 如何在不必定义包含大多数回购的组@check_msg的情况下告诉此gitolite。这会很麻烦...... 在我的BADCOMMIT VREF中,如果使用NOCHECK调用消息,我已经包含了一些不检查消息的行。

任何想法??

repo    testing
  RW+                           = @all
  ?     VREF/BADCOMMIT/NOCHECK  = @all

repo    @all
  -     VREF/BADCOMMIT          = @all

repo    gitolite-admin
  RW...

2 个答案:

答案 0 :(得分:2)

我建议您不要使用git备注:

repo    testing
  RW+                           = @all
  option badcommit.nocheck      = 1

repo    @all
  -     VREF/BADCOMMIT          = @all

然后,在VREF开始时,你说

gitolite git-config -q $GL_REPO gitolite-options.badcommit.nocheck && exit 0

更清洁,并且异常的知识保留在gitolite.conf中。

(当然假设是v3)。

答案 1 :(得分:0)

考虑到:

  • VREF不知道调用它的git repo名称或路径,添加:
  • fallthrough意味着成功(这意味着,作为亚光评论,它将检查所有 VREFS)

唯一的解决方案似乎是VREF脚本“BADCOMMIT”以某种方式检测到它是在一个git repo中它应该测试。
按照惯例,按照惯例,如果git repo包含** git notes(**可以随时添加,而不更改git历史记录,请参阅此man git notes) ,它可以决定不继续检查。

由于git repos很少,不应该使用BADCOMMIT进行测试,因此您可以在该回购邮件的the first commit添加注释。

这样,您不需要NOCHECK,并且您不需要在某个规则之后停止。