git,多人协同开发流程,主分支master,开发分支dev
多人协同开发,线上只有master(稳定版)和dev(测试版)分支
此操作demo是在同一台电脑上,建立3个文件夹进行的
以vite项目为例,假设有a,b,c三人,a是组长
初始化仓库
第一天,a去初始化项目仓库,并执行以下9步
- 本地新建项目
- 初始化仓库
- 建立dev分支
- 添加暂缓区
- 提交本地仓库
- 新建远程仓库
- 将其他开发人员添加到仓库,管理–》仓库人员管理–》添加开发者
- 关联远程仓库
- 将初始版推送到远程仓库
到这一步,仓库上就有初始版本了
开始第一天工作
b,c去克隆这个仓库并进行修改
假设三人分别对App.vue
的template处进行了修改
a 第一天进行提交
第一天 工作结束了,a先把项目同步到了远程仓库
b 第一天进行提交
b也结束了工作,进行了同步推送
但是b遇到了报错,报错得大概意思是
更新被拒绝,因为远程包含您所做的工作在本地没有。这通常是由另一个存储库推送引起的
你可能想要首先集成远程更改(例如,“git pull…“再推。详情请参见'git push——help'中的'Note about fast-forward '。
所以执行命令git pull
这个时候注意看箭头指向的括号,说明有冲突了,在App.vue
打开App.vue,并进行修改
将<<<<<<< HEAD
=======
>>>>>>> 890c32870609806cb192a9f9146cff1fecddf3dd
这三行进行删除,修改内容
保存后进行提交推送
c 第一天进行提交
这时候呢,c的工作也做完了,开始进行推送提交
c也遇到了跟刚才b一样的问题,那就按照刚才b的操作进行一遍吧
选出一版作为稳定版
经过了一天的开发,基础框架已经开发好了(假设开发神速)
在发布前,一定要所有人都提交过了
a先执行下拉,将最新版下载到本地
创建并切换master分支
修改版本说明文件等,没有不做,然后提交
推送
显示就变成了两个分支
然后将master设为默认分支
第一版稳定版就好了
第二天工作
每个人在进行新的一天工作的时候,一定要先进行下拉或者克隆,确保本地一定是最新版
并确定分支是dev
三人做了如下改动
接下来还是按照a->b->c的提交顺序
a:
b、c:
发布第二版稳定版
还是由a进行发布
首先下拉最新版
然后切换到master分支
合并dev到master
可能会碰到下面的情况:
第二版稳定版就发布好了
一些注意事项及问题
- 三人的本地代码一定一定要来自于一个仓库!!!有关联性
- 每天工作前一定要先下拉最新版,确保修改的是对的
ter
可能会碰到下面的情况:
[外链图片转存中…(img-Uj8qY28K-1660879692502)]
[外链图片转存中…(img-pVvlcMAm-1660879692503)]
第二版稳定版就发布好了
一些注意事项及问题
- 三人的本地代码一定一定要来自于一个仓库!!!有关联性
- 每天工作前一定要先下拉最新版,确保修改的是对的
- 超过1个分支之后的下拉就有指定分支了