从百度上看到很多关于git fetch 和 git pull 的不同
实践一下:
从github上新建一个项目try,copy到本地。
在github网站里修改readme.txt文件,新增加一句【alter readme】
在本地仓库的readme.txt也新增加一句,【add some thing】
现在想把本地代码提交到github上,是不能提交的。会出现错误提示!!!
应该先从远程仓库中把代码下载下来
(1)用git pull会怎么样呢?
git pull origin master
打开本地仓库的readme.txt文件
git pull:相当于是从远程获取最新版本并merge到本地
(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好一点,在合并之前可以查看一下更新情况。
时间: 2024-10-26 21:05:48