1. 单分支开发。
说明:仅有 1 个开发分支,多人共享操作。如:单 master。
注意:在进行 commit 操作的时候,很多 IDE 都会附带一个 commit and push 操作。这其实对于多人开发是比较危险的。原因往下看。
每次 push 前需要先 pull,除非你确保你所有改动的文件都不与其他人冲突。
因为多人开发中,可能远程仓库的文件版本已经被人修改过了,此时 push 是会出问题的。
- 以下是 eclipse push 时的问题。这就可以解释为什么有些人 push 会产生 rejected - non-fast-forward 错误。
- 以下是 idea 的错误
idea 给出了 Merge 的选项,其实就是 pull 到本地,进行一次合并。
需要注意的是,并不是 pull 一定成功,有可能远程仓库与你本地库操作了相同的一行,那么 pull 的时候就会弹出如下对话框,此时需要与协作者协商解决冲突,因为你的改动会影响他人下一次 pull,你即使删了他的内容,他下一次 pull 也会不知情地获取删除后的结果,这很危险。
2. 多分支开发模式
比如软件集成版分支为 master,其他开发者有自己的分支