【问题标题】:Saving the entire git diff between two commits in a text file将两次提交之间的整个 git diff 保存在文本文件中
【发布时间】:2013-09-28 14:14:16
【问题描述】:

有没有办法可以将两个差异之间的全部差异保存在一个文本文件中?

假设我想要master 分支上A1A10 之间的所有更改。

--A11-A10-A9-A8-A7-A6-A5-A4-A3-A2-A1-master

或者,有没有一种方法可以让我在终端中获得可以复制+粘贴的整个差异?

【问题讨论】:

  • git diff master~10 master >changes.diff ?
  • git diff commits difference 的可能重复项
  • 有什么方法可以只获取文件名?

标签: git diff


【解决方案1】:

当然:

git diff A10..A1 > my.diff

【讨论】:

  • 请注意,git diff 中的A..B 表示法是方便 功能:diff 作用于endpoints 而不是范围,所以对于差异A..B 真正意味着A B
【解决方案2】:
git diff {commit1} {commit2} > diff.txt

作为 {commit1} 和 {commit2} 对您要比较的初始和完成提交的引用(引用可以是整个或部分 SHA、标签、HEAD.....)

【讨论】:

    【解决方案3】:

    来自手册页..

    git format-patch -k --stdout R1..R2

    【讨论】:

      【解决方案4】:

      如果您只需要保存最近两次提交之间的差异,您也可以使用此命令:

      git diff HEAD^ HEAD > diff.txt
      

      【讨论】:

        【解决方案5】:

        获取所有文件夹/文件名作为差异使用的输出

        git diff <commit1> <commit2> --name-only
        

        【讨论】:

          猜你喜欢
          • 2013-05-16
          • 1970-01-01
          • 1970-01-01
          • 2019-12-07
          • 2015-12-26
          • 2019-10-22
          • 1970-01-01
          • 2011-03-09
          相关资源
          最近更新 更多