0

svnsync を使用して SVN リポジトリを自分のコンピューターにコピーしました。PySVN を使用して再生しようとすると、特定のリビジョン (29762) で失敗し、次のメッセージが表示されます。

pysvn._pysvn_2_6.ClientError: URL 'svn://svn.zope.org/repos/main/ZODB/trunk/src/Persistence' が存在しません

以前のリビジョン (29761) までチェックアウトまたは更新できますが、その後、このエラーが発生します。

私の目的は、コード構造とその進化を分析することです。

client.update(path,
revision=pysvn.Revision(pysvn.opt_revision_kind.number,
RevNumber),ignore_externals=False)

forインクリメントするループ内RevNumber

この特定のリビジョンを無視しても問題ないので、チェックアウトしたコードを進行させて分析できるようにする方法があれば、それで問題ありません (これ以上多くのインスタンスが発生しない限り)。 .

それにもかかわらず、私のレポが作業中のレポのコピーである場合、なぜそれが機能しないのでしょうか?元のレポはどのように適切に機能するのでしょうか?

4

2 に答える 2

0
try:
    client.update(path,revision=pysvn.Revision(pysvn.opt_revision_kind.number,RevNumber),ignore_externals=False)
except: 
    print "Revision skipped at", RevNumber
    continue

これで問題が解決するわけではありませんが、前述のように一部のリビジョンを省略しても問題がない場合は、コードを除いてtry/を使用できます。

于 2011-09-09T14:36:12.547 に答える
0

エラーメッセージはそれを示唆していませんが、ディスク容量が不足していることが原因だと思います。ドライブ上の他のファイルを削除してスクリプトを再実行すると、問題なく動作しました。

于 2010-03-11T06:06:20.280 に答える