git diff between remote and local repo

Trying to diff my local file with a GitHub repo before I submit a pull request so I can see what will show up, is there an accurate way of doing this? I assume GitHub's compare tool manipulates Git's diff ?


Don't do a pull :

  • do a fetch (the syntax is the same as git pull , but it doesn't automatically merge)
  • do a diff between your dest branch and the other branch
  • then do a merge if you want

  • To compare a local working directory against a remote branch, for example origin/master:

  • git fetch origin master
    This tells git to fetch the branch named 'master' from the remote named 'origin'. Git fetch will not affect the files in your working directory; it does not try to merge changes like git pull does.
  • git diff --summary FETCH_HEAD
    When the remote branch is fetched, it can be referenced locally via FETCH_HEAD. The command above tells git to diff the working directory files against FETCHed branch's HEAD and report the results in summary format. Summary format gives an overview of the changes, usually a good way to start. If you want a bit more info, use --stat instead of --summary .
  • git diff FETCH_HEAD -- mydir/myfile.js
    If you want to see changes to a specific file, for example myfile.js, skip the --summary option and reference the file you want (or tree).

  • Per the OP's comment that part of his "problem was Windows vs. Unix LFs" this should help:

    You can use the following config command to tell git-diff to ignore the difference of eol code.

    git config --global core.whitespace cr-at-eol
    
    链接地址: http://www.djcxy.com/p/1160.html

    上一篇: 是否可以在IIS HttpModule中修改HttpRequest POST的内容?

    下一篇: 远程和本地回购之间的git diff