![](/img/trans.png)
[英]Best way to recursively ignore a file or directory pattern in SVN without globally ignoring
[英]Set svn:ignore recursively for a directory structure
我已經將一個龐大的maven項目層次結構導入IntelliJ想法,現在想法已經創建了所有不同層次的.iml項目。 我想svn:忽略這些文件。
有幾個類似的問題,例如這一個: svn(subversion)忽略所有子目錄中的特定文件類型,在root上配置?
但是:答案始終是使用--recursive
標志應用svn:ignore
。 這不是我想要的,我只是想忽略我創建的文件,而不是在下面的數百個目錄上設置屬性。
基本上,我所擁有的是輸出
svn status | grep .iml
看起來像這樣:
? foo/bar/bar.iml
? foo/baz/phleem.iml
? flapp/flapp.iml
等等
我想做的是為每個條目dir/project.iml
添加svn:ignore *.iml
到dir
。 我猜我必須將上面的grep傳輸到sed
或awk
並從那里傳遞給svn
,但我完全失去了一方面確切的sed或awk命令以及確切的svn命令(我不會另一方面,覆蓋現有的svn:ignore values)。
更新:我也不想要的是基於find
解決方案,因為可能在這個層次結構中有.iml文件實際上已提交的項目,我不想干涉這些項目,所以我想添加該屬性僅適用於我的IDE創建的.iml文件。
您可以將客戶端設置為全局忽略給定的文件擴展名。 只需添加
global-ignores = *.iml
進入你的Subversion配置文件。
更新:如果您只想忽略相關目錄中的iml文件,可以嘗試
svn status | grep '^\?.*\.iml' | sed 's=^? *=./=;s=/[^/]*$==' | xargs svn propset svn:ignore '*.iml'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.