SVN日志命令行不显示单个合并修订版(svn log -r)

时间:2017-09-26 10:05:54

标签: svn version-control merge

通过TortoiseSVN进行了巨大的合并,颠覆版本为1.6

阅读SubVersion(最高版本1.5)管理修订的方式:

  

Subversion 1.5及更高版本使用属性保留合并记录。这使我们可以获得更详细的合并更改历史记录。例如,如果您在分支上开发新功能,然后将该分支合并回主干,则功能开发将在主干日志中显示为合并的单个提交,即使在分支开发期间可能已有1000个提交。

现在有几个问题:

如果我进入TortoiseSVN合并分支的历史记录,我看不到合并的修订版,除非我检查“include merged revisions”标志,在这种情况下它们显示为灰色,这是公平的< /强>!

enter image description here

合并消息包含一些错误:

Correcting Shell script that identifies DB objects which have been dropped  from SVN.
Trying to figure out why the shell variable is not getting used properly in
"svn log -qvr..." command

........
(and even) More syntax fixes .. testing call to shell


........
(and even) More syntax fixes .. testing call to shell


........
(and even) More syntax fixes .. testing call to shell

o

在Windows中,消息未显示,但出现以下错误:

svn: E720008: Write error: Not enough storage is available to process this command.

这可能不是一个主要问题,所以我们不要关注这个......

让我们关注命令行,当我运行svn log命令时,我在提交消息中遇到相同的问题:

我可以使用-g参数查看所有历史记录(包括合并修订版),再次公平

MAIN问题是我不能再使用SVN LOG -r命令获取特定的合并版本

例如,您可以看到TortoiseSVN以灰色显示的修订版69524(已选中包含合并的修订版)

但是svn log -r 69524会返回一条空白消息,这发生在所有数千个合并修订中:

enter image description here

这是正常的吗?

欣赏SVN现在管理合并的方式,但是我不能再使用svn log -r获取特定的合并修订信息吗?

这是因为在合并期间出现了问题,还是新版本的subversion的正常行为?

老实说,对我来说这看起来很奇怪!请大家帮我理解,这是杀了我!

由于

解决!

运行来自分支根目录的命令修复了这个问题,老实说我期望合并修订版本在发布分支中列出因为包含在其中,即使在另一个代码行树中制作(模拟git squash /之间的不同行为)变基/合并+提交)

1 个答案:

答案 0 :(得分:1)

在我看来,您应该运行svn log --verbose --revision 60524 https://svn.example.com/repos/svn log --verbose --revision 60524 https://svn.example.com/repos/branches或指定另一个实际受r60524影响的分支。

我可能会误解这个问题,但看起来您提供的网址不正确。修订版r60524未触及/Release分支,因此该命令不显示任何内容。因此,我建议对存储库的根目录运行命令并添加--verbose选项。您将看到哪些路径/分支/ r60525受影响。

请注意,Apache Subversion中的路径区分大小写。确保输入正确的存储库URL。