git merger 然后add 将状态改为resolve
。有冲突的话,git会提示那个文件中有冲突,比如有如下冲突:
<<<<<<<HEAD:test.c(上半部分是自己所在分支)
printf(“test1″);
=======
printf(“test2″);
>>>>>>>issueFix:test.c
可以看到=======隔开的上半部分,是HEAD(即master分支,在运行merge命令时检出的分支)中的内容,下半部分是在issueFix分支中的内容。解决冲突的办法无非是二者选其一或者由你亲自整合到一起。比如你可以通过把这段内容替换为下面这样来解决:
printf(“test2″);
这个解决方案各采纳了两个分支中的一部分内容,而且删除了<<<<<<<,=======,和>>>>>>>这些行。在解决了所有文件里的所有冲突后,运行gitadd将把它们标记为已解决(resolved)。然后使用gitcommit命令进行提交,merge就算完成了
--------------------------------------------------------
gitstatus
gitadd-A
gitcommit
gitpull--rebase
gitpushoriginHEAD
gitmergeorigin/master-lf
gitstatus
gitadd-A
gitcommit
:wq
gitpushoriginHEAD
gitstatus
合并分支解决冲突后:
gitadd-A
gitrebase--continue
gitpushoriginHEAD
撤销所有修改:
gitrebase--abort