0

私は hg-git Mercurial プラグインで TortoiseHg を使用して、Git をまったく使用せずに、Hg のみを使用して Github とやり取りしています。Github で、pandas リポジトリをフォークしました。フォークを自分のコンピューターに正常に複製しました。元の pandas リポジトリを Hg の URL として追加したいので、そのリポジトリから変更をプルして、自分で加えた変更と統合できます。「アップストリーム」という名前で、TortoiseHg の URL に元の pandas リポジトリを追加しました。

ただし、元のアップストリーム リポジトリからプルしようとすると、Hg が長時間ハングし、最終的に「504 - ゲートウェイ タイムアウト」エラーが発生します。pandas リポジトリを (フォークを複製する代わりに) 直接複製すると、そこから問題なくプルできます。

奇妙なことに、これはすべてのリポジトリで発生するわけではないようです。matplotlib repoを使用して同じプロセス(フォーク、フォークのクローンを作成し、元からプルしようとする)を実行しましたが、元のリポジトリからうまくプルしているようです。

さらに奇妙なことに、元のリポジトリを複製してから、フォークを追加の URL として追加すると、両方からプルできます。どういうわけか、元のクローン中に設定された URL は問題ありませんが、同じ URL をソースとして手動で設定すると機能しません。

これは、問題が特に pandas リポジトリにあることを示しているようです。これは可能ですか?そのレポからプルする能力に影響を与える可能性のある Github の設定はありますか? 機能させるにはどうすればよいですか?

4

1 に答える 1

2

hg-gitコマンドライン経由でプロセスを繰り返しましたが、問題を再現できませんでした。したがって、いくつかの可能性があります。

  1. (あなたの)TortoiseHG(設定)に問題があります。
  2. TortoiseHG に URL を入力するときに、何らかのタイプミスをしました。
  3. には奇妙なコーナー ケースがありhg-gitます。
  4. hgrcグローバルなもの (ホーム ディレクトリに隠されている) またはリポジトリ固有のもの ( にあります) のいずれかで、何かが問題を引き起こしています.hg/hgrc

hgrcファイルを Github Gist (必要に応じて匿名化) として提供すると、洞察が得られる可能性があります。

当面の解決策の 1 つは、手動で git を実行してから強制的に更新することです。

cd path/to/hg/repo
git fetch https://github.com/pydata/pandas.git # equal to hg pull, 
hg gimport # pulls the changesets from the hidden git repo into the mercurial repo

これが機能する場合は、保存された URL に問題がある可能性があります。

マージやリベースなどについてはまだ心配する必要がありますが、Mercurial 内でそれを行うことができます。非表示の git リポジトリは、git リモートにプッシュすると自動的に作成されます。または、 経由で強制的に更新することもできますhg gexport

于 2013-05-14T11:37:36.897 に答える