Git多人协作:分支合并的基本操作

Git分支

一般在工作中使用较多的为分支模型为生产/开发模型,即master/dev类型分支。团队开发成员一般是对于dev分支进行提交。
模拟多人协作开发:(默认分支已设置为dev)
现在有两个开发者A和B,两个开发者都要在自己的分支上进行独立的开发。

  1. 创建分支
    开发者A在接到开发任务的时候,先将项目clone到自己本地 在gitbash执行命令:git clone [项目git地址]
    此时应该处于默认分支:dev分支
    开发者A应该在自己的分支进行开发,所以先创建属于自己的分支: git checkout -b A(创建并切换到A分支) ,这条命令其实是下面两条命令的缩写
    git branch A 		#创建A分支
    git checkout A		#切换到A分支
    
    这个时候,开发者A 可以在自己的A分支上开始工作啦!
    开发者B操作同上
  2. 分支合并
    两个开发者分别在自己的分支上进行开发。当然,两个开发者完成任务的时间一般是不一样的。
    现在开发者A最先完成任务,他需要将自己的A分支合并到dev分支。由于在开发者A之前没有人向dev分支push内容、合并分支,所以开发者A执行以下命令即可:
git checkout dev	#切换到dev分支
git merge A			#将A分支合并到dev分支

这样,开发者A就成功将自己的分支合并到dev分支了。
但是:分支合并是在本地进行的此时git线上仓库其实是没有合并的,所以记得将在本地合并好的dev推送到远程git push origin dev,这样,远程仓库的dev就已经是合并好的了

现在开发者B完成开发了,也需要将B分支合并到dev分支。
同上,先切换到dev分支:git checkout dev
但是,此时的dev分支已经和远程的dev分支不同步了,所以需要先将本地的dev分支与远程仓库的dev分支进行同步

git pull origin dev

然后再进行合并git merge B
可以看到命令行提示:Automatic merge failed; fix conflicts and then commit the result
这个时候,就需要解决合并冲突了:
使用命令:git status可以看到需要解决冲突的文件,可以选择保留一方更改或者保留双方更改,这个过程需要手动
解决完冲突后提交更改

git add -A
git commit

git commit之后会出现合并提交提示,输入:wq保存退出
可以看到:

$ git commit
[dev f1e77d4] Merge branch 'B' into dev

合并成功

你可能感兴趣的:(Git,git)