@
Livid 为啥我这条消息不能作为附言发出?
答楼上各位
我们是要求fork出自己的repo、建自己的branch,commit后发pull request,然后code review/merge 到主repo的master。这个流程正常操作是绝对不会有问题的,只是没按规则出牌就出了意外。
出意外的原因是为了让所有工程师都能review完别人的代码后merge(我们认为只又少数人有code review和merge代码的权限很不合理,会严重降低工作效率),就必须给大家开write权限(我们用的是普通的github private,只有read/write/admin三种权限设置),从根上无法禁止直接push(包括force push)。各位自建git、用github enterprise的同学的建议都很靠谱, 可惜我们目前做不到。
确实也有考虑过是不是该强制大家用同样的git工具遵循同样的操作方式,来杜绝意外的发生。不幸,百姓网对工具的使用向来不做限制,甚至可以说是鼓励大家小范围尝鲜,导致百花齐放(其实我对这个是有吐槽的,以后再展开)。大家与git相关的玩法很多,大概只有通过github网页上code review PR并merge,这一点是一致的。所以这次就通过用油猴脚本让大家能继续“merge”,来确保避免breaking things的同时没有妨碍moving fast.
关于code review,我们以前一直是要求“必须”,但全凭自觉。过去多年一直执行得挺好的,但最近一年感觉松懈了。所以这次油猴脚本加了对code review得强制要求。接下来会去研究一下gerrit,看是否值得为此改变大家得工作习惯。多谢大家建议!