1. ホーム
  2. git

[解決済み] git-svn cloneの再開

2022-08-13 01:28:37

質問

私は git-svn の clone 操作を使用して SVN リポジトリのクローンを開始しました。 インポートに約 6 時間かかった後 (それは大きなレポです)、私のコンピューターは私の上で眠ってしまいました。 最初の作業をすべてやり直すことなく、操作を再開する方法はありますか?

どのように解決しましたか。

この git svn fetch を再開するコマンドです。 git svn clone は、いくつかの情報源によって確認されています。

(ちなみに、最初のクローン作成中に接続が切れたり、クローンを停止する必要がある場合、クローンを再開するには、上記のコマンドを実行して履歴のダウンロードを再開するだけでよいです).

<ブロッククオート

でのメモリリークがあるようです。 git-svn . のサイズが git-svn プロセスのサイズは徐々に大きくなり、約 2 週間後には常駐サイズが 1.2 GB になり、その時点で OS はそのフォークを拒否しました。

実のところ、これは不幸中の幸いでした。

私は中断されたクローンを単純な " で再開することができました。 git svn fetch で再開することができ、根本的に小さくなったヒープではるかに速く実行できました。

これは、実際、とてもうまくいったので、私は毎晩と毎朝、このプロセスを中断して再起動する習慣を身につけました。数日後、それは完了しました。

あなたの冒険の始まりは git-svn の冒険を始めます。

git svn clone url://path/to/repo -s

<ブロッククオート

-s フラグは、あなたのリポジトリが "trunk、branches、tags" という規約を使用していることを想定しています。そうでない場合、どのディレクトリがブランチやタグを表すのか、Git に認識させたい場合は手動で指定しなければなりません。

SVN からすべてのリビジョンを取得し、ローカルにコミットするため、長い時間がかかります。何らかの理由で停止した場合は、次のコマンドで再開できます。 git svn fetch .