通过 git 实现多人协作远程开发
在同分支下协作开发
目标:远程 master 分支下的文件代码增加 N 行… 实现:由开发者 1 新增 N 行…代码,由开发者 2 新增 N 行…代码。 条件:在一个分支下协作完成。
根据前个章节的内容我们已经通过 git 来与远程仓库建立了联系。这里我们先在远程仓库中创建一个分支,但是我们的本地仓库还没有与更新后的远程仓库建立连接,现在的仓库是这样的⬇️
- 通过以下命令更新查看
# 拉取远程仓库
git pull
- 查看远程分支
git branch -r
这时候我们的仓库重新建立了联系。
通过两个系统模拟开发者 1 和开发者 2。新建一个分支,通过以下命令将本地仓库分支追踪到远程仓库的分支,形成联系。
# 可以通过新建分支追踪远程仓库分支
git checkout -b branch_name origin/remoteBranch_name
# 如果忘记追踪直接新建,可以直接通过以下命令进行追踪
git push --set-upstream origin branch_name
查看本地仓库和远程仓库是否建立联系
git branch -vv
# 查看本地仓库和远程仓库联系分支和本地仓库分支
git branch -vv -a
这时候开发者 1 已经通过 push 提交到远程仓库,开发者 2 提交到远程仓库会报错,因为当时 clone 的时候没有新增的代码,而开发者 1 的代码已经提交,而开发者 2 继续提交则不知道同一行的代码知道保存谁的代码,会进行报错冲突,这时候需要我们人工解决冲突。
这时候使用以下命令,将远程仓库的代码拉到本地来,将冲突进行合并,在进行 add commit 和 push 提交即可。
git pull
- 将分支合并到 master 中
- 提交申请单
在企业工作中,开发人需要通过填写申请单来让审查者查看是否需要满足要求,这时候,我们需要写一份申请单来让审查者进行查验。
2. 通过本地仓库进行操作合并
最后我们删除分支即可。
最后查看是否删除
git branch -a
在不同分支下协作开发
目标:远程的 master 分支下新增 function1 和 function2 文件 实现:由开发者 1 新增 function1,由开发者 2 新增 function2。 条件:在不同分支下协作完成。 这里的分支是独立分支,是私有的,不会产生冲突!
通过本地创建分支,然后通过本地将分支传入远程仓库
# 创建本地仓库命令
git checkout -b branch_name
# ...编辑文件
# add commit 操作
# 最后通过以下命令将分支 push 到远程仓库
git push origin branch_name
开发者 1 和开发者 2 创建不同分支,操作相同。
这里如果开发者 2 有急事,需要交给开发者 1 来负责,则开发者 1 建立开发者 2 的本地仓库与远程仓库通过 pull 联系,然后进行开发。当开发者 2 回来后,因为开发者 1 已经开发了一部分代码,这时候如果 pull 之后可能会存在冲突,这时候我们需要通过以下命令


