2009-07-07 137 views
3

我试图编写svn版本库中更改/添加的文件列表,以便与phing一起使用,使用以下命令。svn比较版本的修订范围

svn diff --no-diff-deleted --summarize -r 50:HEAD path/to/workingcopy 

当我反向修正范围(-r开关​​),像这样:

svn diff --no-diff-deleted --summarize -r HEAD:50 path/to/workingcopy 

..我得到不同的结果。虽然这是我需要的行为,但我不明白(也许我错过了一些东西)。例如:

假设头版本有一个带有一些文件的新目录:第二个命令将只列出新目录,而第一个命令也会列出其中的所有新文件。至少,这是我认为它经过一些测试后的结果。

我找不到任何关于此事的明确文件。有人可以解释修订范围的顺序意味着什么吗?谢谢!

回答

6

在第一种情况下,您将获得修订版本50和头部之间所做的所有更改。这是你自然期待的,所以我不会进一步解释。然而,相反的范围更有趣一些。这是您需要向Head申请修订版本50的区别。简而言之,它是指定如何撤消所有已完成的更改。你说“第二个命令将只列出新目录”,这是正确的:它告诉你删除目录,这会自然删除它的内容。

相关问题