checkout-indexの2通りのやり方があります。どちらを使うべきなのかもやもやしたので、違いを調べてみました。archiveの方がこの用途には適していると思います。checkout-indexは挙動にクセがあり、ミスしやすいです。archiveの方をお勧めします。archivemasterブランチをエクスポートしたいとします。/tmp/foo(必ず先に空のディレクトリを作っておきましょう。)export-ignoreが便利export-ignoreという便利なオプションがあって、例えばexport時に"test"ディレクトリだけ除外するということができます。$Id$展開もしてくれるident属性が設定してあればファイル中の$Id$をキーワード展開してくれます。--prefix=/tmp/foo/--prefixの落とし穴に注意!実は--prefixの指定方法に落とし穴があります。末尾スラッシュなしで--prefix=/tmp/fooとしてしまうと、/tmp/fooapp/tmp/foolib/tmp/foowwwのようなわけのわからない形でエクスポートされてしまいます。チルダを使って--prefix=~/tmp/foo/と書くと、チルダ展開してくれない代わりに~という名前のディレクトリをカレントディレクトリに作っちゃってくれます。checkout-indexの利点は何かというと、「インデックス(ステージング)のツリー状態をエクスポートしてくれること」です。このようなニーズはほとんどないでしょう。