git diff中提交参数的顺序

git diff中提交参数的顺序,git,git-diff,Git,Git Diff,git命令的顺序是什么 git diff [--options] <commit> <commit> [--] [<path>…] 但当我这么做的时候 $ git diff --stat `git rev-list --until="dec 31 2014" origin/master | head -1` 我得到的打印输出是: 384 files changed, 61255 insertions(+), 20526 deletions(-) 这还不到

git命令的顺序是什么

git diff [--options] <commit> <commit> [--] [<path>…]
但当我这么做的时候

$ git diff --stat `git rev-list --until="dec 31 2014" origin/master | head -1`
我得到的打印输出是:

384 files changed, 61255 insertions(+), 20526 deletions(-)
这还不到30万。所以我的问题是我是否应该先插入新的commit,然后插入旧的commit sedond,比如:

 $ git diff `git rev-list --until="dec 31 2014" origin/master | head -1`..`git rev-list --since="jun 30 2014" --reverse origin/master | head -1` 
我找不到任何关于插入提交的顺序的文档,以便查看新提交和旧提交之间的差异。也许你能为我澄清一下

提前谢谢

编辑: 我问的原因是我想

  • 知道在给定旧提交的情况下,新提交中添加了多少行新代码,以及

  • 我想计算新提交中的代码行数

  • TL;博士 在以下
    git diff
    语法中

    git diff [--options] <commit> <commit> [--] [<path>...]
    
    将向您显示差异
    -∆x

    请注意,由于这两个提交不需要按时间顺序或拓扑顺序排列,因此将它们称为“旧”和“新”(正如您所做的)有点误导

    更多细节 你可以通过查字典学到很多东西。在“描述”部分下,您可以找到

    [……] 比较上次提交之前的版本和上次提交之前的版本

    [……]

    自主题分支启动以来主分支上发生的更改


    这是我不明白的事情。直觉告诉我我想要git diff,它告诉我差异是389650个插入(+),当我执行$git diff时--stat是空项目(开始)和当前提交之间的差异,我得到61255个插入(+)(即61255行代码)。所以git diff不能按我所希望的方式工作。Wheras git diff告诉我,回购协议增加了40000行代码,删除了大约300000行代码,这在我看来更符合逻辑,所以它不能按我所希望的方式工作。基于增量的解释值得称赞:)
    git diff [--options] <commit> <commit> [--] [<path>...]
    
    git diff <x> <x+∆x>
    
    git diff <x+∆x> <x>
    
    git diff [--options] <commit> <commit> [--] [<path>...]
    
    git diff HEAD^ HEAD
    
    git diff topic...master