私は幸いにHgSubversionをしばらく使用していましたが、今日は--svn
をrebaseコマンドに追加するのを忘れていました。 今私は恐ろしい未知のリビジョンを得る 'リベース後のHgSubversion Repoを-svnなしで修正する
これから回復する方法はありますか?私はこの問題を解決するためにtransplant
拡張子を使用して試してみた
私は幸いにHgSubversionをしばらく使用していましたが、今日は--svn
をrebaseコマンドに追加するのを忘れていました。 今私は恐ろしい未知のリビジョンを得る 'リベース後のHgSubversion Repoを-svnなしで修正する
これから回復する方法はありますか?私はこの問題を解決するためにtransplant
拡張子を使用して試してみた
:
へ
hgsubversion
レポproject
固定: > hg clone svn+http://svnrepo/project project-tmp
を 元のプロジェクトフォルダのログを調べて、project-tmp
フォルダから次の操作を実行します。
> hg transplant -s ../project 1234
ここで、1234
は、移動するリビジョンです。すべてのリビジョンがコピーされるまでこれを繰り返します。
これが終わったら、古いフォルダの代わりに新しいフォルダを使うことができるはずです。SVNから再度プルして、変更を元に戻して戻します(--svnを忘れないでください)
私は答えとしてマークします。しかし、私は遠く離れているため、完全な再クローンを必要としないソリューションを本当に望んでいました。私はこれらの種類のバックアップコピーを保管しておきます。 –
"hg svn rebuildmeta"を実行してから "hg pull"を実行して修復する必要があります。
注:これはテストされていないので、私はローカルのレポを複製しています。コードの私の記憶は、これがうまくいくことを示唆しています。
これは時々動作します、私は今日この混乱に自分自身を持っていて、再構築はうまくいった! –
トレースバックが役に立ちます。あなたは '--traceback'でコマンドを実行できますか? –
また、いつ「恐ろしい未知の復活xxx」を手に入れますか?いずれの場合も、ローカル(まだプッシュされていない)もの、またはそれに類するものの上に「変換されたリビジョン」をリベースしましたか? – pmezard
私は今、リポジトリを吹き飛ばしました。私は--svnなしで再編成された変更(1つの新しいリビジョンがありました)(私は2つの非プッシュリビジョンを持っていました)を引っ張りました。それから私はプッシュしようとしました。プルしようとしました...エラー –