前瞻
当涉及到多人开发或个人多分支时,当你或者其他人(或者不同的两个分支)同时对一个文件进行修改,但是修改内容不一样,这时进行merge合并,就产生了合并冲突。下面时一个简单例子:
先将项目添加到版本库
- 随便一个项目(本例以一个laravel项目为例),
git init
先初始化git(项目会产生一个.git文件)
-
git add .
将所有文件添加到缓冲区 -
git commit -m"install"
上传到版本库,运行git log
会看到:
创建一个分支,对welcome.blade.php文件进行修改并提交到版本库
- 先查看git分支,
git branch
-
创建并进入此分支
-
使用phpstorm或者其他编辑器进行修改welcome.blade.php文件
-
git add .
提交,git commit -m"finish new design"
切换master分支继续进行修改
-
git checkout master
,然后修改welcome.blade.php
合并分支
- 现在处于master分支,运行
git merge feature.new-design
合并分支,会报如下错误,这个就是分支冲突
-
git diff [错误位置]
查看内容不同之处,然后通过编辑器查看下需要修改位置,进行修改
重新提交修改好的文件
使用的主要命令
git branch #查看分支
git checkout -b [分支名] #创建并进入分支
git branch [分支名] #创建分支
git merge [分支名] #与当前分支合并
git diff [错误位置] #查看冲突信息