質問

http:でリポジトリを複製できません:

abort: ' http:// MYREPO 'はhgリポジトリではないようです!

最初に、 hg init MYREPO によって新しいリポジトリを作成し、続いてファイルを追加してコミットします。

レポジトリのディレクトリはパスワードで保護されていますが、それによる問題の兆候はありません。クローンの両方の方法を試しました。 (私のローカルマシン上で)

hg clone http:// MYREPO my_repo

and

hg clone http:// user:password @ MYREPO my_repo

repo dirの権限:drwxrwxr-x

問題なく、このリポジトリをリモートマシンに複製できます(同じリポジトリがオンになっています)。

おそらく間違っている可能性があるもの

役に立ちましたか?

解決 4

Argh ... .htaccess設定に注意する必要があります。私の場合、クローンするパスに「hgwebdir.cgi」を追加する必要がありました...回答ありがとうございます!

SSHは論理的に見えますが、どういうわけか自分のローカル以外のユーザーには使用できませんでした:

hg clone ssh:// MY_REMOTE_USER @ MYREPO remote:abort:Mercurialリポジトリがありません(.hgが見つかりません)!

他のヒント

更新:

リポジトリとホスト名を混同しているように見えます

" hg serve"、" hg clone http:// USER @ HOST:8000 &quotを実行している場合; hostは、マシンのIPまたはホスト名(Linuxでは「ホスト名」と入力するか、「ping localhost」を試してください)になります。 --port ####をhg serveに渡すことで、デフォルトのポートを8000から変更できます。

sshで実行したい場合は、" hg clone ssh:// USER @ HOST // PATH / TO / YOUR / REPOSITORY"。 MYREPOという名前のホームディレクトリにリポジトリを作成した場合、次のようにします。" hg clone ssh:// USER @ HOST /〜/ MYREPO"

http経由でのみレポのクローンを作成できます。これは、http経由でレポを提供しているものです。 Mercurialは、組み込みのhttpサーバーを提供します。 「hg serve」を実行しますリポジトリ内で、別の場所(または別のコマンドシェル)から複製を試みます。ローカルクローンだけが必要な場合は、http(" hg clone")を使用する必要はありません。

また、「hg help clone」を試してください;および「hg help serve」」詳細については。

奇妙なことに、sshでクローンを作成するには、直感的ではない余分なスラッシュが必要です。

これは、ポート43211でsshが実行されているホストで機能します

hg clone ssh://example.com:43211//repos/myRepo ./myRepo

ポート番号の後の二重スラッシュは機能しますが、そこに単一のスラッシュがあると「.hgが見つかりません」という結果になります。エラー

besszeroは正しいのですが、ユーザー名とパスワードを使用する場合は、SSHを使用してクローンを作成してください。

hg clone ssh:// machine_ip // your / repo / location your_repo

また、mercurialのhttpサーバー用に別のポートを開きたくない場合、およびhgweb機能を必要としない場合、トラフィックも暗号化されます。唯一の欠点は、チェックアウトするためにログインする必要があることですが、少なくとも私の経験では、変更をプッシュバックするにはHTTPは機能しません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top