场景:
当你开发的项目需要以此为基础版本衍生出定制化项目,并且基础版本也不停的迭代时,需要其他定制化项目同步更新时,需要将基础版的某个稳定的主分支合并到定制化项目的主分支。 举个栗子:当前你的项目B的最新主分支master要合并的项目A的最新主分支milestone-3
需求:
将项目A的milestone-3分支合并到项目B的master分支上。
工具(非必须):
vscode vscode的git插件:git-commit-plugin
步骤:
-
在编辑器终端输入git branch,查看当前分支情况,确保当前分支在你定制化项目的最新主分支上。
-
添加要合并的目标项目A的远程仓库到你的本地仓库。假设项目A的远程仓库地址为 <项目A的远程仓库地址>,你可以使用以下命令添加:
git remote add <远程仓库名称> <项目A的远程仓库地址>
- 拉取目标项目A的远程分支到本地(假设远程分支名为milestone-3):
git fetch <远程仓库名称> milestone-3。
如果项目A的远程分支名和本地你自己的项目B的分支名相同,则需一个临时分支(test):
git fetch <远程仓库名称> milestone-3:<临时分支名称>
- 拉取远程分支操作可能会切换你当前的分支,所以,为了确保当前分支为你定制化项目的最新主分支:
git checkout <你的项目分支名称名称>
- 将临时分支test合并到项目B的master分支上:
git merge <临时分支名称>
-
处理合并冲突(可能需要目标项目的前端协助合并)
-
提交合并结果:
git add .
git commit -m “Merge test branch from Project A into milestone branch of Project B”
8. 提交到远程分支上:
git push