2011-08-04 95 views
0

在Buildr目錄,你可以通過做排除所有目錄中的文件如下:Buildr - 排除資源

resources.exclude 'scratch/*' 

是否可以排除目錄中呢?該Buildr文檔中提到:

過濾器始終排除CVS和.svn目錄,並與.bak的或〜結尾的文件 ,所以沒有必要擔心這些。

我的公司使用Dimensions作爲其源代碼控制,它在每個目錄中創建一個.metadata文件夾,就像顛覆了.svn文件夾一樣。

回答

0

這些排除實際上是從耙(耙/ file_list.rb)繼承

module Rake 
    ... 
    class FileList 
    ... 

    DEFAULT_IGNORE_PATTERNS = [ 
     /(^|[\/\\])CVS([\/\\]|$)/, 
     /(^|[\/\\])\.svn([\/\\]|$)/, 
     /\.bak$/, 
     /~$/ 
    ] 

    ... 
    end 
end 

所以它可能猴子補丁的默認值,如果這就是你想要的。

或者,也可以直接在FileList通過使塊並調用exclude方法添加排除,

pkg_files = FileList.new('lib/**/*') do |fl| 
    fl.exclude(/\bCVS\b/) 
end 

由於Buildr濾波器(http://buildr.apache.org/rdoc/classes/ Buildr/Filter.html)暴露出其內在FileList,你可以簡單地做:

resources.sources do |fl| 
    fl.exclude(/\.metadata/) 
end 
+0

我似乎無法得到這個工作(對不起缺乏紅寶石技能讓我失望)。 resources.sources do ...對我沒有任何幫助(可能會遺漏一些簡單的東西)和pkg_files = FileList ...篩選出正確的文件和目錄,但我似乎無法告訴資源包含pkg_files – Ross