提供一个替代方案,可以考虑一下,保留当前的三个yaml文件,然后对yaml文件内容节点按照字母排序,区分大小写,这样在新增SIG或者SIG新增项目时,会相对均匀的分布到文件的不同位置,相当于按字母分区了,避免所有的修改都到文件末尾,引起冲突。TC在review的时候,注意提醒提交者保持顺序就可以了。
myeuler myeuler@163.com 于2020年4月28日周二 下午7:15写道:
我觉得这种方式比较好。这就能完全解决问题了。我没有问题。
在 2020-04-28 18:20:06,"Huxinwei via Tc" tc@openeuler.org 写道:
大家好:
我想在这里发起下“关于TC管理SIG和repository申请流程”的讨论。
[背景]
当前申请新sig时需要在sig目录中创建一个新的子目录,并且在sigs.yaml中增加相应项。
而申请新repo时,需要在src-openeuler.yaml, openEuler.yaml以及sigs.yaml增加相应项。
由于新增时习惯性会在yaml文件最底部添加,在变更频繁时冲突非常激烈。
我们注意到有些PR就是因为这个原因,反复修改来解决冲突,体验非常不好。
但,我们也不能简单的对上述文件做拆分,因为gitee提供的机制只能对有限个文件的变化做监控。
如果随意拆分,会导致当前社区自动化流程失灵。
[解决方案建议]
保留repositories/src-openeuler.yaml, repositories/openEuler.yaml以及
sig/sigs.yaml这三个文件,但是不再接纳TC团队之外发起的任何提交。
将当前repositories/src-openeuler.yaml的内容按首字母拆分到
repositories/src-openeuler/$initial_character/$repo_name.yaml中。首字母不区分大小写。
将当前repositories/openeuler.yaml的内容按首字母拆分到
repositories/openeuler/$initial_character/$repo_name.yaml中。首字母不区分大小写。
将当前sig/sigs.yaml的内容,按所属SIG,拆分到sig/$sig_name/repositories.yaml中。
新申请SIG时,只需要需要创建相应的SIG目录,填写OWNER,与 repositories.yaml
新增repo时,需要在repositories中相应目录下创建$repo_name.yaml,并在
sig/$sig_name/repositories.yaml中新增对应项。
当这些PR被approve之后,TC运行脚本来整合各个分散的yaml文件,提交一个PR来统一修改前述三个yaml文件。
[遗留问题]
由于SIG对自己目录中有完全修改权,所以SIG可以自行修改目录中的repositories.yaml。但是这个修改不会生效。TC
在整合各个sig的yaml时,需要做额外的检查。
请大家对这个方案建议发表意见。我在随后两天会整合大家意见,发出TC的机器人脚本。
谢谢
Poincaré Laboratory
Huawei Technologies Co.,Ltd.
Tc mailing list -- tc@openeuler.org To unsubscribe send an email to tc-leave@openeuler.org