そもそもリポジトリ全体をチェックアウトせずに、git (バージョン 1.7.0.4) リポジトリからローカル フォルダに完全なサブフォルダを取得するにはどうすればよいですか? これが解決策になると思いました:
git --work-tree=/home/tmp/testcheckout checkout COMMITID -- images/*
いくつかのディレクトリを含むレポ構造の例:
/git/project1/sourcecode
/git/project1/images
/git/project1/howto
/git/project1/readme.txt
そのため、コマンド例は、その git リポジトリにコミットされたすべてのファイルをチェックアウト/git/project1/images
し/home/tmp/testcheckout
て COMMITID をコミットする必要がありますが、その特定の COMMITID でコミットされたファイルのみをチェックアウトし、それより前にコミットされた他のすべてのファイルを無視します。
問題:
上記のコマンドでは、COMMITID でコミットされたサブフォルダーからファイルのみを取得します。
質問:
私が望むのは、その COMMITID までのすべてのファイルを取得することです。これに対する解決策はありますか?
重要: 後で 1 GB のファイルを取得できるようにするためだけに、リポジトリ全体 (700 GB) のクローンを作成したくありません。そのため、レポ全体を複製せずにレポからファイルを直接取得する方法が必要です。