这是我参与「第五届青训营 」伴学笔记创作活动的第 8 天
Git团队合作学习|青训营笔记
团队合作基本模型
同事将中央仓库代码clone到本地,进行修改,通过
git add xxx
git commit
git push
将本次新增commit上传到中央仓库代码
自己通过
git pull
从中央仓库更新内容
合作流程
- 同事 commit 代码到他的本地,并 push 到 GitHub 中央仓库
- 你把 GitHub 的新提交通过 pull 指令来取到你的本地
潜在问题
同一时间,只能有一人在工作,不能同时push。
问题原因
因为git的push是用本地仓库commits的记录去覆盖远程仓库的commits记录,当远程仓库含有本地没有的commits的时候,push将会导致远程仓库的commits被擦除,此时push就会失败
解决
先用pull将远程仓库的新内容取回本地和本地合并,然后将合并的本地仓库向远程仓库推送。
合作流程2.0
- 写完所有的 commit 后,不用考虑中央仓库是否有新的提交,直接 push 就好
- 如果 push 失败,就用 pull 把本地仓库的提交和中央仓库的提交进行合并,然后再 push 一次
总结
此时的合作模型仍较为简单,适合于对代码管理没太大需求的开发队伍。之后我将继续学习一种基于branch的工作模型,这种工作模型更为中小型团队的代码开发所使用。