0

在 TortoiseSVN 中合并时(例如从发布分支到主干),有一个“显示日志”选项可以选择要合并的修订。这会以黑色显示所有未完成的合并,并且所有已完成的合并都显示为灰色。

我基本上希望从 Windows 的命令行获得相同的功能:能够从我的发布分支到主干检索所有未完成(合格)合并的列表,包括修订号、修订日期、用户名、修订消息以及可能的文件他们自己。

我可以使用我的主干文件夹中的以下命令来获取合格(未完成)修订的列表:

>svn mergeinfo http://svn.example.com/svn/myProject/branches/1.0 --show-revs eligible
r1001
r1002
r1006

但这实际上只输出修订号列表。

我可以手动将这些修订键入到 log 命令中,这给了我想要的信息:

>svn log http://svn.example.com/svn/myProject/branches/1.0  -r 1006
------------------------------------------------------------------------
r1006| rob| 2012-06-13 17:55:37 +0100 (Wed, 13 Jun 2012) | 1 line

Updated code documentation

------------------------------------------------------------------------

我怎样才能有效地将这两者结合起来?

4

2 回答 2

2

我认为 --log 会解决你的问题,

svn mergeinfo http://svn.example.com/svn/myProject/branches/1.0 --show-revs 合格 --log

如果您想了解更多信息,请尝试 -v 选项。

于 2016-07-29T15:50:21.690 回答
1

我找到了一个解决方案,涉及将输出重定向svn mergeinfo到文件中,并使用它来驱动svn log命令:

svn mergeinfo http://svn.example.com/svn/myProject/branches/1.0--show-revs eligible > revs.txt
FOR /F %k in (revs.txt) DO svn log http://svn.example.com/svn/myProject/branches/1.0 -r %k -v
DEL revs.txt

这就是我想要的——但我确信我之前已经看到它直接通过 svn 命令行完成了。

于 2012-06-14T17:15:31.527 回答