【问题标题】:vimdiff between current and previous git version of a filevimdiff 文件的当前版本和上一个 git 版本之间的差异
【发布时间】:2013-02-28 06:17:06
【问题描述】:

有没有办法使用 vimdiff 来比较文件的当前版本和 相同 文件 n git 版本之前的版本?

例如,我正在处理 ma​​ster 分支上的文件 foo.c。我想在 ma​​ster~10 的 foo.c 和 foo.c 之间做一个 vimdiff,从旧版本中复制一两行。

PS 我知道 git cherry pick,但这是针对整个文件,而不仅仅是几行。

【问题讨论】:

    标签: git vim vimdiff


    【解决方案1】:

    呃!实时调频。我添加了一个关于这不是 git difftool 用例的 PPS,然后开始想知道“git difftool 到底做了什么......”。

    解决办法是:

    git difftool master master~10 -- foo.c
    

    也就是说,假设 difftool 已经在 ~/.gitconfig 中正确设置:

    [diff]
      tool = vimdiff
    [difftool]
      prompt = false
    

    【讨论】:

      【解决方案2】:

      对于在 Vim 下使用 Git,fugitive.vim - A Git wrapper so awesome, it should be illegal 插件非常有用。看看吧!

      vimdiff 可以用:Gdiff [revision].

      【讨论】:

        【解决方案3】:

        在不覆盖 git 配置的情况下工作的解决方案是

        vimdiff file.tex <( git show master~2:file.tex )
        

        【讨论】:

          【解决方案4】:

          【讨论】:

          • 哇,Trev,你的速度太快了。你怎么这么快就看到这个问题了,你有机器人在运行吗?!?!
          猜你喜欢
          • 2012-04-11
          • 1970-01-01
          • 1970-01-01
          • 2021-06-05
          • 1970-01-01
          • 2013-05-24
          • 2017-12-31
          • 1970-01-01
          • 2015-12-13
          相关资源
          最近更新 更多