1

我有一个 Subversion 存储库,它是我们团队可访问的子树的镜像。svnadmin 转储是使用对源存储库具有有限访问权限的帐户创建的。镜像比使用 svnadmin load 初始化。

svnadmin load repo < svndump 
svn propset --revprop -r0 svn:sync-from-uuid af407c0b-a50a-0410-b304-fd27f8ee8df8 %dstrepo%
svn propset --revprop -r0 svn:sync-last-merged-rev 187698 %dstrepo%
svn propset --revprop -r0 svn:sync-from-url %SourceRepo% %dstrepo%

历史包含大量没有路径和日期的修订。

svnsync sync  %dstrepo% %SourceRepo%

同步工作

这导致大量的 svn 修订看起来像这样

svn log -vl10 repo

....
------------------------------------------------------------------------
r204669 | ebenneheij | 2014-09-22 12:04:00 +0200 (ma, 22 sep 2014) | 4 lines
------------------------------------------------------------------------
....
r204570 | (no author) | (no date) | 1 line
------------------------------------------------------------------------
r204569 | (no author) | (no date) | 1 line
------------------------------------------------------------------------
r204568 | (no author) | (no date) | 1 line

相关:如何获取特定日期或日期范围内的 SVN 修订号 相关: http: //manned.org/rsvndump/29eed607

看起来这些空修订是用于填充的,但它们破坏了使用日期范围进行修订的选项。

我正在尝试验证最近 30 天的提交

svnadmin verify -r {`date -d '30 days ago' +%F `}:HEAD repo

这在 revprops 中没有日期的修订上失败。

未能找到修订 191375 的时间

不知何故,svnadmin 转储和 svnsync 创建了没有日期信息的空修订。这导致了我看到的错误。

我尝试使用 svndumpfilter --drop-all-empty-revs 删除空修订。该解决方案的问题是 svnsync 将不再连接。我现在看到的一个解决方案是用 svnrdump 替换 svnsync,用存储在某处的 lastsynchronised 修订版替换 svndumpfilter。

我可以用日期填写填充的修订,以便日期范围有效吗?

更新:添加镜像描述

Update2:只有路径对我可见的修订包含日期

更新3:替代建议

更新4:填充的空修订不包含日期,如何填写日期?

4

0 回答 0