git pull 与git fetch的区别

从百度上看到不少关于git fetch 和 git  pull 的不一样git

实践一下:github

从github上新建一个项目try,copy到本地。shell

在github网站里修改readme.txt文件,新增长一句【alter readme】fetch

在本地仓库的readme.txt也新增长一句,【add some thing】网站

如今想把本地代码提交到github上,是不能提交的。会出现错误提示!!!spa

应该先从远程仓库中把代码下载下来code

(1)用git pull会怎么样呢?it

git pull origin master


打开本地仓库的readme.txt文件ast

git pull:至关因而从远程获取最新版本并merge到本地class


(2)使用git fetch命令

接着上面的,咱们把冲突的代码改了,再提交上去

再在readme.txt文件上增长use fetch 

在本地仓库的readme.txt文件修改,增长use fetch loca

l


本地提交代码,并提交代码,由上面可知,不能提交上去

输入

git fetch origin master



打开readme.txt文件,没有任何变化

咱们再输入

git log -p master..origin/master

能够查看远程仓库中,是谁修改了代码,和怎样修改

而后输入

git merge origin/master

手动merge仓库

而后咱们来看看readme.txt文件

fetch至关于获取到github远程仓库上修改的代码,

能够经过git log -p master..origin/master来查看不一样

最后根据本身的须要合并代码


结论:pull至关于fetch操做加上merge操做,

不过fetch好一点,在合并以前能够查看一下更新状况。

相关文章
相关标签/搜索