2013-02-12 42 views
5

私は、デプロイディレクトリにコードベースをコピーする前に、一時ディレクトリにリポジトリのsvnエクスポートを実行しています。svnディレクトリを除くすべてのディレクトリをエクスポートします

「エクスポート」コマンドでディレクトリのリストを「除外する」方法はありますか?

この理由は、エクスポートが高速になるためです(この展開で削除するものを取得する必要はありません)ので、展開スクリプトは高速です。

+0

はあなたの明確な答えのため – Benjamin

答えて

3

これを実現するにはSparse Directories Exclusionという概念を使用できます。詳細はhereをご覧ください。

このblog postも上記の考え方を説明した。

私の中には、私の プロジェクト作業コピーのいくつかのディレクトリに何が起こっているか気にしないと言います。たぶん私はSubversion プロジェクトのウェブサイトについてこれ以上気にしません。さて、この新しい除外機能で、私は そのディレクトリを削除するにはSubversionを伝えることができます。

$ cd ~/projects/subversion/trunk 
$ svn update --set-depth=exclude www 
D   www 
$ ls www ls: cannot access www: No such file or directory 
$ 

完了した取引を。今後私の作業コピーを更新すると、 はそのwwwディレクトリを対象とした変更を受け取りません。私は後で 私はもう一度そのディレクトリを気にすることを決定した場合、私は 再びそれを「再登録」することができます

$ svn update --set-depth=infinity www 
A www 
A www/links.html 
A www/testing-goals.html 
… 
A www/tigris-permissions.html 
A www/webdav-usage.html Updated to revision 36292. 
$ 
+1

感謝をunix.stackexchange.comに属します。私は "1つのコマンド"を望んでいたが、私は3つのコマンドが私の場合にそのトリックを行うだろうと思う。ステップの概要:「svn update -set-depth = exclude; svn export; svn update set-depth = infinity; – user1484259

関連する問題