所有文档

          效率云

          安装hook

          1.下载代码库时的安装hook是干什么用的? 安装了此hook后,每次push会进行相应的检查,检查合格才能入库。 2.commit-msg是运行在客户端的一个git hook 它在每次git commit的时候自动往commit message末尾附加一行随机的change-id,如下图

          commit 35f59303f16e31a378742231594b34d0e0721482
          Author: yangyang22    <yangyang22@baidu.com>
          Date:   Mon Oct 31 20:05:28 2016 +0800
          
          haha again
          
          Change-Id: I9be49fa665d9bd2a5e1cbbb26ed37b6105461ace</yangyang22@baidu.com>

          在iCode(Gerrit) 提交流程中

          #1) 产生新commit A1
          $ git commit
          #2) 发起CR
          $ git push orgin HEAD:refs/for/master
          #
          # O -- A1 (master, refs/changes/23/123/1)
          #
          #3.替换旧commit A1,得到新的A2
          $ git commit --amend
          #4) 更新CR,同第2步
          $ git push orgin HEAD:refs/for/master
          #
          # O -- A1 (refs/changes/23/123/1)
          #   \
          #     A2 (master, refs/change/23/123/2)
          #

          A1和A2因为有相同的change-id,可以被iCode识别为同一个CR的新旧2个版本

          如果没有change-id,则会被识别为2个不同的CR(显然不是我们想要的结果)

          了解更多关于change-id的说明:https://review.openstack.org/Documentation/user-changeid.html

          上一篇
          用rebase得到线性历史
          下一篇
          iCode常见问题