码农进入公司的第一步 就是掌握好并熟练使用git
关于git的基础概念 liaoxuefeng.com/books/git/i… 廖雪峰老师这个网站已经讲解的非常明白了
这里主要想记录一下 在工作环节中会经常多人合作的时候经常会碰到的问题 冲突
冲突来源: 各自分配的任务,改动的地方有存在相同的区域,这时候有人先提交代码并且合并到远程分支的时候,当你的功能分支开发完成想要合并进去远程分支(指的是主分支)这时候会存在代码冲突 无法进行合并
这时我们需要把主分支的改动同步到自己的功能分支(feature)来解决潜在冲突, 稳妥的方式当然是在本地来搞 当然线上的分支即使解决完也是没有推送的权限
(主分支同步到本地)在本地中将主分支(本地) 和自己开发的功能分支进行冲突的解决, 这时候就会用到两种方式1:merge 2:rebase
git merge 和 git rebase 都是用于整合分支的方法。
merge 会保留分支的历史,并生成一个新的合并提交,适合多人协作,能够清晰反映开发过程;
rebase 则是把当前分支的提交“搬到”另一个分支之后,会重写历史,历史更线性、更干净
使用哪种方式的话 主要看公司的管理方式更偏向哪种了
贴一张log图
git rebase 效果
git merge 效果