今天来聊聊源代码获取机制,在一定程度上来说代码的获取我们不用关注太多,本质上就是一个
git pull
的动作,但是在不同的环境中需求是不一样的,比如dev
环境,开发在自测的时候可能会在feature
分支上进行测试工作,在提测的时候可能会在主干分支,上线的时候可能会打tag等等操作,所以我们获取代码的场景需要去适配几种场景。
•dev
环境,需要支持各种分支的拉取•test
环境,需要支持各种分支的拉取, 理论上来说该环境编译后的产后可以直接适用于staging
和prod
环境,在后续的环境中不用再次获取源码,至于原因大家可以参考下前面的文档•staging
环境,需要支持各种分支的拉取•prod
环境,需要支持各种分支的拉取
相信大家对这两个概念并不陌生,增量这块的获取是一直保持在同一个目录下每次都进行git pull
的动作,缺点是目录不够干净,全量拉取这块是指每次操作都采用全新的目录进行操作,确保每次的代码获取无交叉,我个人是比较倾向于全量拉取, 另外一个层面就是不用考虑是pull
还是clone
了,每次都是全新的clone
动作。
•针对不同的环境,用户指定对应的分支来进行源代码的拉取工作•子目录递归操作
在不同的环境对应不同的分支获取动作这块操作,需要注意对应的分支模型的概念,二者是相辅相成的,可以参考前面的文档运维自动化基础建设|代码分支模型和运维自动化基础建设|代码分支模型续。