我正在使用Gitosis来管理一组存储库。我遇到的问题是Gitosis没有保存哪个用户推送特定提交的记录。我所拥有的唯一信息是提交本身的“作者”和“提交者”字段,这些可以通过“推送者”设置为任何内容。如何跟踪推送到Gitosis存储库的人员?
现在我意识到单个“推送”可以向Gitosis服务器发送很多很多提交,并且每个提交都是由单个开发人员创建的,所以我应该限制自己说我只对头部提交了被推送的分支。这个提交将会(应该)由创建该发布的人员创建,所以我想知道是谁,以便在出现问题时可以将其击败。
我的想法是在服务器上使用钩子来比较头提交的提交者和gitosis用户名。如果他们都是“[email protected]”,那么推送者是提交者,推送是允许的,否则将被拒绝。这是可行的吗?我应该使用哪个钩子 - 我认为“更新”是一个,尽管预先接收和后接收也是可能的。
我还考虑过使用post-receive钩子来标记头部提交,让它把推入者的用户名放在带注释的标签消息中。与此相关的问题是,查看提交的人不一定会意识到该标签。
我接受其他建议如何做到这一点。基本的想法是我想知道哪个Gitosis用户推送到特定的分支。
如果我能找出谁推动标签(或限制推动者为标签),那会更好!
凯文