开发者社区> 问答> 正文

AGit-Flow 实现的技术细节有哪些?

AGit-Flow 实现的技术细节有哪些?

展开
收起
与时俱进的探索者 2021-11-06 21:51:38 757 0
1 条回答
写回答
取消 提交回答
  • image.png

    "如图左侧所示, git push 命令包含两部分信息,一个是被打成包的数据,叫 “packfile”;另一个是推送的命令,叫“commands”。“ packfile”和“commands”被推送到服务端后,“packfile”会走左侧的路径,首先进入“quarantine” 中,进行“隔离”。 当“commands”经过“pre-receive” 钩子检查,认为用户的权限 OK、提交说明 OK、提交修改的文件 ok,“packfile”才会从隔离区释放出来,进入对象库(objects)。(如果“ pre-receive” 钩子脚本失败,则删除隔离区,并返回错误信息,终止推送命令的执行。) 接下来“commands”会传递给内置的“ execute_commands()” 函数,实现分支的创建、更新、删除等操作。然后通过“repor()”函数报告给客户端,最后执行“ post-receive”钩子脚本,完成事件通知。 资源来源:电子书《阿里巴巴 DevOps实践手册》下载连接:https://developer.aliyun.com/topic/download?id=205"

    2021-11-07 18:11:35
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
AGit-Flow:新一代高效Git协同模型 立即下载
AGit-flow:新一代高效Git协同模型 立即下载
Deep Dive:应用交付网络架构设计 立即下载