一直说是fetch和merge的结合,那么分开来看下。现在origin和本地有分歧。手动模仿pull:先fetch:所以fetch说做的就是把远程分支的objects和分支名拉下来,然后分支名存在.git/FETCH_HEAD文件,相应的obj存在./git/objects下。这就是fetch所做的,接下来还需要和本地的merge。merge:这就是手动merge fetch下来的东西,最后新加一个提交。此时就可以push了。