3

OSXServerを実行している新しいXServeサーバーでcvsからsvnへの移行を実行しようとしています。OSXにプリインストールされているcvs2svnライブラリとdbmライブラリの間に既知の競合があります。エラーは次のとおりです。

エラー:cvs2svnは、下位レベルのdbmライブラリに依存するanydbmパッケージを使用します。システムにdbmがあり、cvs2svnに問題があることがわかっています。cvs2svnを使用するには、dumbdbmまたはdbm以外のPythondbmライブラリをインストールする必要があります。詳細については、 http://python.org/doc/current/lib/module-anydbm.htmlを参照してください。

cvs2svn FAQで規定されているすべての手順を実行しましたが、エラーが引き続き発生します。このタスクを実行するための別の方法、またはこの一見一般的な問題に対して別の解決策を提供する別のWebサイトを知っている人はいますか?

4

5 に答える 5

7

CVSおよびSubversionリポジトリは実際には単なるファイルのコレクションであるため、この問題を回避する1つの方法は、cvs2svnが正常に実行できるマシンにCVSリポジトリをコピーし、それを実行してSubversionに変換してから、新しいリポジトリをにコピーして戻すことです。あなたのサーバー。この方法の追加の利点は、この変換手順の実行中にサーバー構成を誤って混乱させるリスクを冒さないことです。

于 2009-07-27T20:29:25.373 に答える
3

cvs2svn自体はMacPortsで利用できるため、dbmライブラリだけでなく、MacPortsを使用してcvs2svnをインストールできます。

port install cvs2svn

まだインストールされていない場合は、MacPortsバージョンのpython2.5およびその他の依存関係もインストールされます。害はありませんが、少し時間と余分なスペースが必要になります。利点は、依存関係の問題と戦うことなく、サポートされているバージョンが機能することです。

于 2009-07-27T22:56:40.537 に答える
1

MacPortsなどを使用して、他のdbmライブラリをいつでも手動でインストールできます。

于 2009-07-27T20:28:23.877 に答える
1

すでにsubversionがインストールされている場合は、システム変数にパスが正しく設定されていることを確認しましたか?

私も同じ問題を抱えていたので、Python_Homeに変数と使用するパスを追加する必要がありました。

C:\ Pyton27 \

于 2012-07-31T17:15:54.583 に答える
0

少しクレイジーまたはやり過ぎに聞こえるかもしれませんが、「git」(MacPortsバージョンなど)の使用を検討してください。完全なCVS履歴のクローンを作成し、Subversionリポジトリにプッシュします。次の手順で作業を行うことができます(コマンドのマニュアル、git help´cmd´を参照してください)。

    port install git-core cvs cvsps svn(必要な場合)

    gitおよびinitcvsgit repoのディレクトリを作成します(たとえば、「cd〜/ cvsgit」としましょう)。
    git cvsimport -v-dCVSROOTモジュール

    トランク、タグ、ブランチを使用して新しいSubversionリポジトリ(svnadmin)を作成します
    次に、この新しいリポジトリをgitリポジトリにインポートします。
    git svn clone -s file:/// path / to / svnrepo(トランク、タグ、ブランチなし)
    これにより、svnrepoディレクトリが作成されます。名前を変更して、たとえば〜/svngitに移動します

    ここで、cvsgitrepoをsvnrepoに追加します。
    cd〜/ svngit
    git remote add cvsrepo〜/ cvsgit
    git fetch cvsrepo

    ここで、cvsマスターブランチをローカルのsvnマスターブランチにマージします。
    git merge remotes / cvsrepo / master

    最後に(実際の)svnリポジトリにコミットします:
    git svn dcommit

完了です。

于 2009-07-27T21:28:39.933 に答える