問題
Subversion リポジトリから git-svn を使用して浅いコピーを作成するにはどうすればよいですか? たとえば、最後の 3 つのリビジョンだけをプルするにはどうすればよいですか?
オプションを使用すると、このgit clone
コマンドは Git リポジトリから最後の n リビジョンを取得できます--depth
。つまり、リポジトリの浅いコピーを取得します。例:
git clone --depth 3 git://some/repo myshallowcopyrepo
git-svn に同様のオプションはありますか?
これまでの私の発見
これまでのところ、プルするリビジョンが-rN
どこにあるかというオプションしか見つかりませんでした。N
例:
git svn clone -rN svn://some/repo
ドキュメントによると、 を使用する可能性があります-r$REVNUMBER:HEAD
。エラーメッセージを返した最後の3つのリビジョンを取得するために、次のことを試しました。
$ git svn clone --prefix=svn/ -s -rHEAD~3:HEAD http://some/svn/repo .
revision argument: HEAD~3:HEAD not understood by git-svn
そのため、3 番目で最後のリビジョン 534 の実際の番号に置き換えHEAD~3
ました。これは機能しましたが、最初に 3 番目で最後のコミットのリビジョン番号を把握する必要があります。
$ git svn clone --prefix=svn/ -s -r534:HEAD http://some/svn/repo .
ドキュメンテーション