git冲突 解决

Fatal: cannot do a partial commit during a merge
 
在提交单个文件的时候出现这个错误.

意思是不能部分提交代码.




缘由是git认为你有部分代码没有作好提交的准备,好比没有添加


解决方法是

1. 提交所有


git commit -a 





2. 若是不想提交所有,那么能够经过添加 -i 选项

git commit file/to/path -i -m "merge"




上述状况通常出如今解决本地working copy冲突时出现, 本地文件修改(手工merge)完成后,要添加并提交,使得本地版本处于clean的状态.

这样之后git pull就再也不会报错.
 
 
 
冲突处理

当两条分支对同一个文件的同一个文本块进行了不一样的修改,并试图合并时,Git不能自动合并的,称之为冲突(conflict)。解决冲突须要人工处理。

好比当前在master分支,想把dev分支merge过来,结果产生了一个冲突,打开文件内容能够看到这么一个冲突:[复制代码]
<<<<<<< HEAD test in master ======= test in dev >>>>>>> dev
[复制代码]  

<<<<<<<标记冲突开始,后面跟的是当前分支中的内容。

HEAD指向当前分支末梢的提交。

=======以后,>>>>>>>以前是要merge过来的另外一条分支上的代码。

>>>>>>>以后的dev是该分支的名字。

对于简单的合并,手工编辑,而后去掉这些标记,最后像往常的提交同样先add再commit便可。git



原帖:http://www.30daydo.com/article/79spa