git diff远程和本地回购
试图diff
我的本地文件与GitHub回购之前,我提交一个拉请求,所以我可以看到会显示什么,是否有一个这样做的准确方法? 我认为GitHub的比较工具操纵Git的diff
?
不要做一个pull
:
- 做一个
fetch
(语法是一样的git pull
,但它不会自动合并) - 做你的dest分支和其他分支之间的
diff
- 然后做一个
merge
如果你想
比较远程分支的本地工作目录,例如origin / master :
-
git fetch origin master
这告诉git从远程的“origin”中获取名为“master”的分支。Git fetch
不会影响工作目录中的文件; 它不会尝试像git pull
那样合并更改。 -
git diff --summary FETCH_HEAD
当获取远程分支时,可以通过FETCH_HEAD在本地引用它。 上面的命令告诉git将工作目录文件与FETCHed分支的HEAD进行比较,并以摘要格式报告结果。 摘要格式给出了变化的概述,通常是一个很好的开始; -
git diff FETCH_HEAD -- mydir/myfile.js
如果要查看特定文件(例如myfile.js)的更改,请跳过--summary
选项并引用所需的文件(或树)。
根据OP的评论,他的“问题是Windows与Unix的LF”的一部分,这应该有所帮助:
你可以使用下面的configuration命令告诉git-diff忽略eol代码的区别。
git config --global core.whitespace cr-at-eol