命令行列出subversion中的所有合并(副本)?

时间:2010-09-27 18:42:02

标签: svn

如何列出所有的subversion合并?

例如:

Trunk ____9_____14____20___
          \      \     \
           \______\_____\____
Branch01   10     15    21

如果我在rev 9上分支,然后在rev 14进行合并。什么是subversion命令行,它将rev 15标识为来自trunk的rev14的合并?我现在能告诉的唯一方法是从日志文件中。但是,我知道我可以发出以下命令:

svn log –-stop-on-copy svn:<URL>/branches/Branch01

它将在rev 10(分支)上停止。有没有我可以发出的命令,它会将21,15和10作为副本列出?

2 个答案:

答案 0 :(得分:13)

您可以使用svn plist命令...

 svn plist -v svn:mergeinfo URL/branches/Branch01

将打印出有关分支的信息

另一种方法是使用--use-merge-history

svn log -v --use-merge-history URL/branches/Branch01

编辑: 在我看来,你正在寻找的是什么。

svn mergeinfo URL/trunk URL/branches/Branch01 --show-revs merged

答案 1 :(得分:0)

在每次合并操作期间,更改svn:mergeinfo属性以记录合并。在这种情况下,mergeinfo将在Branch01。 Subversion仅记录从合并更改的位置,而不是将它们合并到的位置。

我不确定您的用例是否足够,但您可以尝试找出有{merge}更改的Branch01的所有修订版?