使用git diff可以看见版本之间的区别,现在想看看某一个特定文件在各个版本中有什么改变

解决方案 »

  1.   

    http://stackoverflow.com/questions/278192/git-how-do-i-view-the-change-history-of-a-file
      

  2.   

    git diff test.txt
    git diff HEAD -- ./test.txt
    git diff test.txt masterMore detail you can see the command `git help diff`
      

  3.   

    觉的你这个不太靠谱啊  
    git diff test.txt master
    拿一个文件跟一个版本相比,怎么比呀
    git diff HEAD -- ./test.txt
    中间的--是干嘛的呢
      

  4.   

    觉的你这个不太靠谱啊  
    git diff test.txt master
    拿一个文件跟一个版本相比,怎么比呀
    ==========================真蛋痛, 那是例子, 
    git diff test.txt [branch name]原文描述
     Compare the version before the last commit and the last commit.
    Comparing branches
    你打 git help diff 看文档.
    EXAMPLES
           Various ways to check your working tree               $ git diff            (1)
                   $ git diff --cached   (2)
                   $ git diff HEAD       (3)           1. Changes in the working tree not yet staged for the next commit.
               2. Changes between the index and your last commit; what you would be
               committing if you run "git commit" without "-a" option.
               3. Changes in the working tree since your last commit; what you would
               be committing if you run "git commit -a"       Comparing with arbitrary commits (同版本之间比较)               $ git diff test            (1)
                   $ git diff HEAD -- ./test  (2)
                   $ git diff HEAD^ HEAD      (3)           1. Instead of using the tip of the current branch, compare with the
               tip of "test" branch.
               2. Instead of comparing with the tip of "test" branch, compare with
               the tip of the current branch, but limit the comparison to the file
               "test".
               3. Compare the version before the last commit and the last commit.       Comparing branches (分歧版本的比较)               $ git diff topic master    (1)
                   $ git diff topic..master   (2)
                   $ git diff topic...master  (3)           1. Changes between the tips of the topic and the master branches.
               2. Same as above.
               3. Changes that occurred on the master branch since when the topic       Limiting the diff output               $ git diff --diff-filter=MRC            (1)
                   $ git diff --name-status                (2)
                   $ git diff arch/i386 include/asm-i386   (3)           1. Show only modification, rename and copy, but not addition nor
               deletion.
               2. Show only names and the nature of change, but not actual diff
               output.
               3. Limit diff output to named subtrees.       Munging the diff output               $ git diff --find-copies-harder -B -C  (1)
                   $ git diff -R                          (2)           1. Spend extra cycles to find renames, copies and complete rewrites
               (very expensive).
               2. Output diff in reverse.
      

  5.   

    如果你要在同一分支下比较一个文件在不同版本之间的区别。git diff 83f5ca6637280eecbb654eea1b78abef27e1c85c:filename 07d03e76072b0533e147425c8d259eef3cb0b44f:filename红色的版本名用 git log查看
    一般都是比较上一版本的差别, 再前一点的文件是否存在还在判断。