Jenkins 修订日志中的DELTA与PLAIN

Jenkins 修订日志中的DELTA与PLAIN,jenkins,svn,fsfs,Jenkins,Svn,Fsfs,我在网上搜索了一下,没有找到一个好的答案,但是由于某种原因(升级到TortoiseSVN 1.9.0后?)我的Subversion修订版日志文件格式已经改变,这让Jenkins SVN插件感到困惑,我不知道为什么 在../Repository/db/revs/0中,查看修订文件的尾部,我得到了以下关于tail-n40 116的旧修订: PLAIN K 8 branches [elided] ub-3.0.t115-38 modify-file true false /trunk/foo/ba

我在网上搜索了一下,没有找到一个好的答案,但是由于某种原因(升级到TortoiseSVN 1.9.0后?)我的Subversion修订版日志文件格式已经改变,这让Jenkins SVN插件感到困惑,我不知道为什么

../Repository/db/revs/0
中,查看修订文件的尾部,我得到了以下关于
tail-n40 116
的旧修订:

PLAIN
K 8
branches

[elided]

ub-3.0.t115-38 modify-file true false /trunk/foo/bar.c

17579 17721
DELTA 116 17463 103
SVNgfK▒a19

[elided]

ua-3.0.t116-39 modify-file true false /trunk/baz/wibble.h

4646 4785
对于
尾部-n21 117
,头部修订:

PLAIN
K 8
branches

[elided]

ub-3.0.t115-38 modify-file true false /trunk/foo/bar.c

17579 17721
DELTA 116 17463 103
SVNgfK▒a19

[elided]

ua-3.0.t116-39 modify-file true false /trunk/baz/wibble.h

4646 4785
是否有一些工具可以将这些
DELTA
修订日志转换为
PLAIN
格式,或者有一些设置可以防止创建
DELTA
修订


更新:描述了这似乎是导致此问题的原因。

您不应手动触摸存储库修订文件。除了Subversion开发人员之外,它们对任何人都没有任何意义。您试图以这种方式解决什么问题?看起来你走错方向了

PLAIN
DELTA
始终位于Subversion FSFS修订文件中。此外,Jenkins(确切地说是它的SVN插件)应该没有存储库后端格式的问题,因为它使用客户机层访问存储库


如果您对这些
DELTA
PLAIN
的测量感兴趣,请阅读位于的FSFS存储库后端设计文档。

以下是对我有用的完整答案

首先,假设
/cygdrive/c/SVNRepository
作为回购位置,执行以下操作以获取当前存储库的快照:

 cd /cygdrive/c
 svnadmin dump SVNRepository/ >copy.dump
 rm -rf SVNRepository
 svnadmin create --compatible-version 1.8 SVNRepository
请注意,兼容的1.8版非常重要,因为Jenkins还不能理解新的1.9格式

现在使用您选择的编辑器,加载
SVNRepository/db/fsfs.conf
,例如:

vi SVNRepository/db/fsfs.conf
找到以下两行(我的第61行和第69行):

并将其更改为:

enable-dir-deltification = false
enable-props-deltification = false
现在将快照导入新数据库:

svnadmin load SVNRepository/ < copy.dump
svnadmin加载SVNRepository/

现在,詹金斯应该又回来工作了

使用
svnadmin verify
检查此存储库。