3

私の会社は SVN リポジトリの移行を行っており、2 つのリポジトリ間でリビジョン番号が重複することを避けたいと考えています (どちらも現在アクティブです)。

私の要件は、新しいリポジトリのリビジョンを特定のリビジョン番号 (たとえば、100.000) に強制することです。

FSFS リポジトリを分析することで、リポジトリ番号を変更する適切な場所のように聞こえる「db/current」ファイルに出会いました。

誰もこの手順の経験がありますか? 今後おかしなことが起きないようにしたいです!

PS: リポジトリに「100.000」のダミー コミットを作成できることは理解しています。そのような手順と、手順中および手順後のリポジトリの潜在的なパフォーマンスの問題について、あなたの経験を共有してください

PS3: 手順の前に全員に作業コピーをコミットしてもらうのは良い考えかもしれないと理解しています。これは私たちにとっては問題ではありません (現在、新しいリポジトリのユーザーは非常に限られています)。それでも、これまたは同様の要件を経験したことがある場合は、共有してください! :)

PS3: これは標準的な SVN 手順ではないことを理解しています。多くの人が要件自体に反対する可能性があります。私の要件が健全であると仮定しましょう!:)

4

4 に答える 4

2

まず、これを冷やそうとしないでください。2 つをマージする場合は、ダンプ/ロードを使用して新しいものを古いものの上に置くことができ、リビジョン番号が処理されます。したがって、特定のバージョンのリビジョン番号を知る必要がない限り (おそらく外部またはタグ)、これについてまったく心配する必要はありません。

ツールを使用できる場合は、たとえば、svnsync または svnadmin パックが変更されたリポジトリで機能しないことを後で見つけるよりも常に優れています。

それでもやりたい場合は、 revprop 0 と db/current ファイルの最終リビジョン番号を更新すればOKです。

ただし、このアプローチを直接経験した人はいないと思います。

于 2009-08-19T09:51:47.517 に答える
2

http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=940194 :

Q: Subversion でリポジトリのリビジョン番号を人為的に増やす方法はありますか?

A: それを行う唯一の方法は、多数のダミー リビジョンをコミットすることです。

于 2009-10-30T11:20:21.153 に答える
-3

Subversion 1.7 では、svndumpfilterツールを使用して、によって作成されたダンプ ファイルから不要なコミットを除外できsvnadmin dumpます。

http://svnbook.red-bean.com/en/1.7/svn.reposadmin.maint.html#svn.reposadmin.maint.filtering

そのページから:

[svndumpfilter] は、リポジトリ ダンプ ストリームのパスベースのフィルターとして機能します。

したがって、これを使用して特定のパスからコミット データを削除できます。これは、一部のレポ管理シナリオで役立ちます (ただし、すべてではありません)。具体的には、レポへのコミットがフォルダー (リリース ID など) によって集約される場合、svndumpfilterはレポのサイズを縮小するのに役立ち、不要なフォルダーを削除できるようになります。

于 2013-08-29T08:26:18.217 に答える