不同分支下协作开发
如果有开发需要多人协作完成,一般是不会在一个分支下去多人开发的。因为在同一分支下容易造成版本冲突,这样显得比较麻烦。所以我们可以根据需求来建立分支,例如每一个功能点创建一个分支。
场景
现有一个仓库
tes
t,需要在test
仓库中添加两个文件,这两个文件的内容分别由开发人员a
和开发人员b
在本地编辑并提交。要求每个开发人员都有自己动作的分支。最后再将这两个分支的内容合并到master
分支上。
操作流程
1.在远程创建新分支dev1和dev2
2. 开发人员拉取各自分支的内容
使用git pull
指令保证本地的master是最新的,并且拉取了远程的所有分支。
也可以使用指令git pull origin dev1
只拉取远程的dev1分支到本地。
在本地创建dev1分支并与origin/dev1建立链接
开发人员b重复上述操作。
3.开发人员完成任务并提交
这样一来,开发人员都提交了各种的文件到远程的分支中。
4.合并分支,解决冲突
接下来就是将dev1和dev2分支合并到master上。由于是两个不同的文件,合并的时候其实不会有冲突,因为dev1和dev2分支提交的内容是两个不同的文件。如果是同一个文件,那么就有可能发生合并冲突,此时我们需要先解决冲突。解决冲突的不能直接在master分支上进行。因为可要保证master分支的安全。
当前场景不需要解决冲突,所以直接填写PR表申请合并。
或者在本地合并之后再推送到远程,这里演示这种方式:
- 开发人员a合并dev1到master后提交到远程
- 开发人员b更新master分支,重复操作1
- 查看远程仓库的master分支,任务完成后删除dev1/dev2分支
成功完成任务。可以删除dev1和dev2分支,保证分支干净。