工作流有各式各样的用法,但也正因此使得在实际工作中如何上手使用增加了难度。这篇指南通过总览公司团队中最常用的几种 Git 工作流让大家可以上手使用。在阅读的过程中请记住,本文中的几种工作流是作为方案指导而不是条例规定。在展示了各种工作流可能的用法后,你可以从不同的工作流中挑选或揉合出一个满足你自己需求的工作流。
★集中式工作流
如果你的开发团队成员已经很熟悉 Subversion,集中式工作流让你无需去适应一个全新流程就可以体验 Git 带来的收益。这个工作流也可以作为向更 Git 风格工作流迁移的友好过渡。
★
★
2.GitHub
是一个用于托管代码的第三方平台,git只是一个工具,不能做代码托管,github是一个远程仓库,通过git工具实现代码的托管、拉取、推送等等的操作。码云、码市等等
网址:www.github.com
1.创建一个仓库
2.通过git进行克隆
克隆到本地
3.将代码提交到远程仓库上
如果选中“提交”,那么是提交到本地仓库,而不会推送到远程仓库。
如果在之前是点了“提交”,那么就是提交到本地仓库,并没有推送到远程仓库,所以需要通过这种方式推送到远程仓库。
3.在GitHub上用分支进行协同开发
1.集中式工作流案例
★案例一
案例情况: 两个开发人员,暂称为小李与小郭,都从github上克隆了代码到本地,之后
小李对登录功能代码做了修改并且提交推送到了远程仓库,
小郭这时候并不知道小李做了代码的更改,假如这时候开发了一个注册功能完成之后推送提交到远程仓库,结果提交失败了
原因分析:因为小郭克隆的代码里面的登录功能还是旧版,并不是小李推送提交修改后的新版功能,所以出现了提交不成功的情况
解决方案:小郭先把新版的代码拉取过来覆盖掉旧版的,再进行注册功能的推送(因为已经提交到了本地仓库)
★案例二
案例情况:小李再次拉取代码,又更新了自己的登录功能代码把V1.2版本提交并推送到了远程仓库,之后
小郭闲的没事干,去看了看小李的登录功能代码,做了一些改进,也更新了登录功能,之后发现提交推送失败了,所以拉取最新代码,结果失败了
原因分析:因为git并不会去把你修改的代码直接覆盖掉(不然你写的代码做的修改不就白干了?),所以就产生了冲突
解决方案: 方案一:小郭把自己的代码复制一份放在别的地方,再把小李的拉下来看看有什么区别,更改以后再推送
方案二:使用git解决 : 将冲突的内容调整好后写在下方,然后点击保存,然后标记为已解决,再提交并推送到远程仓库。
拉取失败以后,查看变更,