svn チェックアウトで 1 つのファイルのみが表示される

svn チェックアウトで 1 つのファイルのみが表示される
anisha@linux-y3pi:~/Desktop/mysvn> svn list https://earthhtml.googlecode.com/svn/
branches/
manual.cpp
ogmap.html
svn-book.pdf
tags/
trunk/
wiki/

ただし、これは 1 つのファイルのみをダウンロードします。

anisha@linux-y3pi:~/Desktop/mysvn> svn checkout https://earthhtml.googlecode.com/svn/trunk
Checked out revision 3.

anisha@linux-y3pi:~/Desktop/mysvn> ls
manual.cpp  manual.cpp~  ogmap.html  svn-book.pdf  trunk

anisha@linux-y3pi:~/Desktop/mysvn> cd trunk/
anisha@linux-y3pi:~/Desktop/mysvn/trunk> ls
ogmap.html

どうしてこんなことに?

http://code.google.com/p/earthhtml/source/browse/#svn%2Ftrunk

答え1

ディレクトリにファイルが 1 つしか含まれていないからでしょうか? リポジトリの Web ビューへのリンクがそれを証明しています。最初にリストしたファイルは 1 つ上のディレクトリ レベルにあるため、すべてのファイルが必要な場合は、次のようにします。

svn checkout https://earthhtml.googlecode.com/svn

を含む 1 つのファイルを表示するにはsvn list、trunk フォルダーの内容を一覧表示します。

 svn list https://earthhtml.googlecode.com/svn/trunk

これを前のコマンドと比較すると、なぜ 1 つのファイルしか取得されなかったのかが明らかになります。リポジトリの内容全体ではなく、トランク フォルダーのみを要求したためです。

リポジトリ構造:

branches/
    /.../
manual.cpp
ogmap.html
svn-book.pdf
tags/
    /.../
trunk/
    ogmap.html
wiki/
    /.../

svn checkoutリポジトリの構造を直接コピーします (そうしないと、同期し直すのが難しくなります)。サブフォルダーのみを指定すると、そのフォルダーのみがダウンロードされます。これは部分チェックアウトと呼ばれます。

答え2

何か見落としているかもしれませんが、チェックアウトした「trunk」には、実際には 3 番目のリビジョンに 1 つのファイルしかありません。ここでは何もおかしくないように思えます。試してみてsvn checkout https://earthhtml.googlecode.com/svn/、お知らせください。

関連情報