Git代码托管(四)开发流程

Git代码托管(四)开发流程 关于git的版本托管流程方法各个公司规范可能不一样一、主次1、以matser为主1开发阶段从master拉取一个新分支如xxx-feature2上线时该xxx-feature分支直接做为上线包源代码3上线后xxx-feature一次性merger到master上。4后续版本重复上面的123步骤2、以release为主总代码在master上每个版本一个release分支该release分支做为release包源代码。1开发阶段代码都提交到master上2上线时从master上cherry pick代码到release分支。二、代码提交为防止冲突提交代码时1、多人共用一个分支如公用xxx-feature分支① stash本地变更②pull更新代码③ 释放stash有冲突则解决④ 提交代码2、单独分支开发时每个人从主分支如master拉取一个自己的分支如dev-feature-wtyy。提交代码时以下check out的都是dev-feature-wtyy1stash本地变更2把master最新代码Merger到你的分支master右键选择update也即更新master右键master选择 merger master into dev-feature-wtyy。3释放stash有冲突则解决4commit--push5发起MRmerge到master建议压缩提交多个commit会被自动合并成一个commit如果后面还需要从master分支cherry pick到其他分支如release分支会比较方便6merge master into你的分支也即重复第二步没有这一步的话再次尝试第5步会发现还显示上一次的changes。所以merge into master后即使中间没有别人提交代码也要有merge master into dev-feature-wtyy这一步如果是在本地操作的merge记得push否则下次提交代码再发起MR里面会包含你上一次MR的changes。merge成功后可以看到merge的提交记录注意如果提交时冲突过多难以解决可以先update 主分支再从主分支上创建一个新分支这一步也可以在gitlub上操作然后把本地变更从旧分支cherry pick到新分支上再push。