產品 Release 時, 真的很懶的話, 就是直接 svn checkout 後, 就讓他上線, 但是 .svn 的目錄怎麼辦~ 就用下面這一行來砍一砍:
find PATH -type d -name '.svn' -exec rm -rf {} \;
PATH 再自行換成那個路徑即可. 🙂
感謝 jeffhung 指點, svn 有 export 的參數可以用, 使用 export 就不會有 .svn 的目錄:
svn export http://HOSTNAME/SVN_PATH (跟 checkout 參數類同)
感謝 ihower 提供的 Apache 阻擋設定 (於 Apache 設定下述即可)
<DirectoryMatch "^/.*/\.svn/">
ErrorDocument 403 /404.html
Order allow,deny
Deny from all
Satisfy All
</DirectoryMatch>
其它 Apache 設定擋法
-
<Directory ~ "\.svn">
Order allow,deny
Deny from all
</Directory> -
RewriteRule ^(.*/)?\\.svn/ - [F,L]
-
RedirectMatch 404 /\\.svn(/|$)
那為什麼不直接用 svn export 就好?
Mmm.... 主要是不知道有 svn export 的參數可以用, 大感恩. Orz
< DirectoryMatch "^/.*/\.svn/">
ErrorDocument 403 /404.html
Order allow,deny
Deny from all
Satisfy All
嗯嗯~ 我現在就是用這個方法解決的.. XD
只是覺得這樣子似乎還要多過一層 Apache, 所以才想直接把目錄砍了~ 😛
解法在 comments 都出現了
RoR 的方式好像是用 svn checkout 然後像 ihower 說的方式用 apache 來避開 .svn 目錄
我在 deploy 的時候也是用 svn export :p
呵呵, 對呀, 主要是我沒有想到有 svn export 這個可以用, 感謝各位前輩的提醒呀.. Orz..
用 svk 做 checkout 也可以解決 :p
svk 的 checkout?? 這個我倒是沒研究過, svk 的 checkout 不是一樣嗎?... @.@a...
若不用 svn export,這是 windows 上的解法:《Shell Command - Remove .svn Folder》。
耶,會被濾掉啊?
《Shell Command - Remove .svn Folder》
http://evotalk.net/blog/?p=404
Windows 的這招真是太神了, 沒想到可以這樣玩~ Orz...
我也不知道 LifeType 會濾掉 , 最近 LifeType 問題還不少, 在考慮要不要轉換了... Q.Q
svk 的 checkout 不會有 .svn 資料夾
原來如此, svk 還真方便 😀
感謝指點 Orz..
试下, find -type f ! -path '*/.svn/*'
要含目錄砍掉, 可能不能用 type f ?