参考:

http://stackoverflow.com/questions/2529441/how-to-read-the-output-from-git-diff

https://www.git-tower.com/learn/git/ebook/en/command-line/advanced-topics/diffs

http://www.ruanyifeng.com/blog/2012/08/how_to_read_diff.html

就最不明白的一点:

23,7表示从23行开始的7行,但是明明只改了一行.

其他的那些行都是上下文,用来帮你理解更改位置的.

但是23行,是从erb:success开始,为什么diff后还多出了21行的get...

那还不如从21行开始呢,省了一行又有什么意义.

又看了看,chunk头后不换行是识别出了语言的方法名,这个看git能不能识别出语言.

至于为什么是23,7不是21,9就不管了.

1.git diff

不带任何参数的git diff,是暂存区与工作区相比较,旧的是暂存区

2.git diff head

将head和工作区相比,旧的是最新版本库

3.git diff --cached 或者--staged

head和暂存区相比,旧的是head

这样三个位置都互相比较完了,一般来说表的优先级从旧到新是head->暂存区->工作区.

4.git status -s

两个M,第一个M是版本库和暂存区对比,第二个M是暂存区和工作区对比.只要commit完了,版本库和暂存区内容一样,除非再次add

Git Diff 格式分析的更多相关文章

  1. git diff 结果分析

    git diff 的5个使用场景: 1.staging area和working area的文件 (无其他参数时) git diff   2.master分支和working area的文件 (用ma ...

  2. git diff 以及解决代码冲突

    我是使用一台电脑测试, 然后在本地电脑创建了两个工作目录.专门用来模拟两个人提交代码.假设a.b两个人.只使用一个master分支做测试, 没有建立其他的分支. 主要就是为了研究冲突的解决方式.感觉g ...

  3. Git diff结果显示分析

    1.diff的三种格式: 正常格式(normal diff) 上下文格式(context diff) 合并格式(unified diff) 2.示例文件为了便于讲解,先新建两个示例文件.第一个文件叫做 ...

  4. Git命令diff格式详解

    diff是Unix系统的一个很重要的工具程序. 它用来比较两个文本文件的差异,是代码版本管理的基石之一.你在命令行下,输入: $ diff <变动前的文件> <变动后的文件> ...

  5. 实践中的Git常用指令分析

    从工作开始,一直都在使用为知笔记(作为程序员需要知道的内容很多---不需要很深入理解,一段时不使用的东西可能就会忘记).但本周一同步不同PC端时,了解到为知会在2017/1/1开始收费! 既然收费了, ...

  6. Git diff (---和+++具体解释)

    如果两个文件相似度很高,那么上下文格式的diff,将显示大量重复的内容,很浪费空间.1990年,GNU diff率先推出了"合并格式"的diff,将f1和f2的上下文合并在一起显示 ...

  7. git diff 理解

    0. 理解 git diff 返回信息 1. 命令 $ git diff README.md 2. 返回信息,注解 diff --git a/README.md b/README.md ## 1. 表 ...

  8. git diff的使用

    有时候可能睡觉时候忘记关电脑了,然后不小心触碰到键盘上某个神秘的按钮了,然后自己也不知道就提交了 就可能很悲剧 那么有时候不知道自己是否改变了哪些文件的内容 这时候就需要用到git diff git ...

  9. Git以及github的使用方法(三),git status查看工作区的状态,git diff查看具体修改内容

    我们已经成功地添加并提交了一个readme.txt文件,现在,是时候继续工作了,于是,我们继续修改readme.txt文件,改成如下内容: Git is a distributed version c ...

随机推荐

  1. RabbitMq的整理 exchange、route、queue关系

    https://blog.csdn.net/samxx8/article/details/47417133

  2. Codeforces Round #332 (Div. 2) D. Spongebob and Squares(枚举)

    http://codeforces.com/problemset/problem/599/D 题意:给出一个数x,问你有多少个n*m的网格中有x个正方形,输出n和m的值. 思路: 易得公式为:$\su ...

  3. appium长按按钮

    public static AndroidDriver driver; /长按操作:waitAction的参数单位是ms/ public static void longClick(String id ...

  4. 线程间操作无效: 从不是创建控件“button2”的线程访问它

    在项目中经常遇到类似的问题,如何解决呢,报错的方法中添加  Control.CheckForIllegalCrossThreadCalls = false; 就可以解决了.

  5. Java只给汉字转URLEncoder

    public static String encode(String str, String charset) throws UnsupportedEncodingException { Patter ...

  6. 如何将购物车信息存到Redis中?

    存到Redis中,好处是速度快.毕竟写到硬盘需要更多的时间.加入购物车的功能,操作很频繁,可以通过Redis快速写入,移除,修改. 用什么方式呢? 传统的KEY,VALUE不太合适,每次增加修改,都要 ...

  7. 关于git提示“warning: LF will be replaced by CRLF”终极解答

    一.发现问题 windows平台下使用git add,git deploy 文件时经常出现“warning: LF will be replaced by CRLF” 的提示. 网上很多解决办法提到: ...

  8. vue总是报缩进、空格的错

    在bulid/webpack.base.conf.js里 createLintingRule的内容注释掉

  9. SpringMVC 处理Date类型数据@InitBinder @DateTimeFormat 注解 的使用

    使用SpringMVC的时候,需要将表单中的日期字符串转换成对应JavaBean的Date类型,而SpringMVC默认不支持这个格式的转换,解决方法有两种,如下: 方法一 . 在需要日期转换的Con ...

  10. 牛客OI周赛4-提高组 C 战争(war)

    战争(war) 思路: 二分答案, 找到第一个不满足条件的位置 首先对于一个值来说, 所有这个值的区间肯定有交区间, 然后在这个交区间内不能出现比它小的数 所以我们check时从大的值开始考虑, 求出 ...