0

現在、リモート Subversion リポジトリのクローンを実行しようとしています。リモート リポジトリは非常に低速なリンクでしか利用できないsvnsyncため、ローカルの Subversion リポジトリを作成することにしました。約 30 時間後、Subversion リポジトリのローカル コピーができました。

これを新しいmercurialリポジトリにクローンするにはどうすればよいですか? 問題は、使用している次のフォームのどちらも機能していないfile:///ように見えることです。

$ hg clone svn+file:///home/user/repo repo.hg
abort: repository svn+file:///home/user/repo not found!
$ hg clone file+svn:///home/user/repo repo.hg
abort: repository file+svn:///home/user/repo not found!
$ hg clone file:///home/user/repo repo.hg
abort: repository /home/user/repo not found!

逆に、情報を提供し、その場所に適切なサブバージョン リポジトリがあることを証明しますsvn info file:///home/user/repo svn://サーバーをローカルで実行していないため、明らかに意味がありません。

私も試しました:

$ hgimportsvn file:///home/user/repo repo.hg
SVN branch isn't a copy
Finished! You can now pull all SVN history with 'hgpullsvn'.

しかし、hgpullsvn最初の半ダースのリビジョンでのみ成功し、その後エラーになります:

Interrupted, please wait for cleanup!

External program failed (return code 1): hg '--encoding' 'utf-8' 'remove' '-A' 'branches/Company/CVSROOT'
branches/Company/CVSROOT: No such file or directory

(これは、CVSからSubversionへCVSROOTの以前の変換に起因しているようです。これは私の時代よりも前のことです。)

で強制しようとしてもhgsvn、プロトコル指定子を理解できませんか?file:///svn+file:///

注意: 以前に via を複製しようとしhgましhgsvnたが、しばらくしてから via を同期するときにエラーが発生しましたhgsvn。履歴全体のクローンを作成するには非常に時間がかかるためhgsvn、以前にリモートで行ったように、ローカルの Subversion リポジトリのコピーを使用してクローンを作成しました。

4

2 に答える 2

3

ただの意見: 2010 年から「メンテナンス モード」になっている hgsvn を使用しないでください。Mercurial に hgsubversion 拡張機能を追加し、それを使用して Subversion リポジトリのクローンを作成します。

PS: "svn+" プレフィックスは、http で提供されるリポジトリにのみ役立ちます (Subversion、Mercurial、Git には http:// を使用できるため)。ローカル Subversion リポジトリ (hgsubversion のクローン) は file:/// になります

于 2013-03-16T08:42:42.000 に答える
1

私は再びこの問題を抱えていました。hgsubversionこれは、拡張機能が正しく構成されていないか、インストールされていない場合の症状の 1 つでもあります。

HgSubversion のドキュメント サイトで指摘されているように、 .hgrcor (グローバルまたはローカル)に適切な行があることを確認してください。例 (必要に応じてパスを調整します):Mercurial.ini

[extensions]
hgsubversion = ~/hgsubversion/hgsubversion

次に、次のように確認します。

hg help hgsubversion
hg help subversion

私の推測では、拡張子がないと、Hg はフォルダーに何を期待するかを単純に理解できず、Mercurial リポジトリーを期待しますが、それを見つけることができません。

私の場合、これはローカルを上書きすることによって再び~/.hgrc引き起こされました。

于 2013-11-19T19:16:40.013 に答える