私は 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 が接続できなくなることです。私が今見ている解決策は、svnsync を svnrdump に置き換え、svndumpfilter をどこかに保存されている lastsynchronized リビジョンに置き換えることです。
日付範囲が機能するように、パディングされたリビジョンに日付を入力できますか?
更新: ミラーリングの説明を追加
Update2 : パスが表示されているリビジョンのみに日付が含まれています
Update3 : 代替提案
Update4 : パディングの空のリビジョンには日付が含まれていません。日付を埋める方法は?