Jenkins 修订日志中的DELTA与PLAIN
我在网上搜索了一下,没有找到一个好的答案,但是由于某种原因(升级到TortoiseSVN 1.9.0后?)我的Subversion修订版日志文件格式已经改变,这让Jenkins SVN插件感到困惑,我不知道为什么 在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
../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
检查此存储库。