【问题标题】:How do I output the difference between two specific revisions in Subversion?如何在 Subversion 中输出两个特定版本之间的差异?
【发布时间】:2012-07-24 15:56:20
【问题描述】:

我正在通过 Linux 命令行界面使用 Subversion。

我想在我的终端中查看名为 fSupplierModel.php 的特定文件的修订版 11390 和 8979 之间的区别。我该怎么做?

【问题讨论】:

标签: svn diff


【解决方案1】:

参见手册中的svn diff

svn diff -r 8979:11390 http://svn.collab.net/repos/svn/trunk/fSupplierModel.php

【讨论】:

  • 如果你想要漂亮的输出,安装colordiff并添加` | colordiff` 到上述命令的末尾以通过它传递所有内容。
【解决方案2】:

要比较整个修订版,只需:

svn diff -r 8979:11390


如果您想将上次提交的状态与您当前保存的工作文件进行比较,您可以使用方便的关键字:

svn diff -r PREV:HEAD

(注意,后面没有指定任何内容,将比较指定修订版中的所有文件。)


如果你之后添加文件路径,你可以比较特定的文件:

svn diff -r 8979:HEAD /path/to/my/file.php

【讨论】:

  • 将 HEAD:PREV 放在 diff 输出中对我来说似乎更有意义,也许会对其他人有所帮助
  • @Fonix 您是否处于“另一个提交与我当前状态有何不同”的范式中?如果是这样,我同意。我通常会考虑按时间顺序提交的更改,因此在 HEAD 中所做的更改将是来自 PREV 的新/添加更改,这是我通常认为的范式。对于任一范式都有案例和论据。
  • 当您执行 git diff 时,它会显示您相对于先前提交添加的内容。上一篇:HEAD 更有意义,但这是一些人更喜欢反转操纵杆或触控板的上下控件的事情之一。主观的特殊偏好。
  • 奇怪的是,我是玩 FPS 游戏时使用倒置鼠标的人之一:P
  • 这会解释它:P
猜你喜欢
  • 1970-01-01
  • 2014-10-10
  • 1970-01-01
  • 1970-01-01
  • 2012-04-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多