git 代码仓库创建分支开发到合并主分支流程
前言:规范代码提交的命名以及流程,开发者从创建分支开发到合并主分支的整体交付流程
A开发者创建git项目
A开发者在main分支中编写了hello.py文件,内容如下所示
# coding=utf-8 def test(): print("this is test func") if __name__ == '__main__': test()
接着推送上仓库,作为初始化项目
git add hello.py git commit -m "init hello.py" git push origin main
B开发者创建新分支开发功能
B开发者创建了新分支feat-v1,并且在新分支中新增了start和end功能在主函数hello中进行调用,如下图所示
推送新分支代码
A开发者主分支修改代码
A开发者同时也在开发代码
推送代码到仓库
新分支feat-v1合并main
此时有一个需求,就是需要让B开发者将自己维护的feat-v1分支的新功能代码合并到main中
但是现在有个问题就是,main分支也在被其他开发者维护,feat-v1分支在被自己维护,如果自己直接将新分支feat-v1合并到main中的话,那么项目发布很有可能存在代码问题导致项目发布失败
所以第一步的话B开发者先将分支切换到main分支中同步最新的分支代码,如下图所示
git checkout main git pull
接着就是B开发者重新切换到新开发的分支feat-v1中,将最新的main分支代码合并到feat-v1中完成最新代码(原分支和自己的新功能代码)的整合
git checkout feat-v1 git merge main
合并中出现了Merge conflict的情况,这是因为同一个文件hello.py在main分支和feat-v1分支中都存在变动,如下图所示
通过查看可以知道hello.py中存在分支冲突的情况
假如我两边的变动都需要保存,那么我这边直接选择"保留双方更改即可"
接着重新add提交该hello.py进行推送代码到远程feat-v1分支仓库
git add hello.py git commit -m "merge main" git push origin feat-v1
提交PR进行代码评审
提交PR申请将feat-v1新分支变动合并到main分支中
合并PR
当main分支的开发者A同意pr即可将feat-v1合并到main分支中,如下图所示
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY