使用WinRar排除.svn目录

Ech*_*lon 3 svn powershell winrar

我有一个PowerShell脚本,我用它来创建从几个地方复制编译文件并使用winrar压缩它们的发行版.在脚本中,我切换到包含我要运行的文件夹的目录并执行此操作:

Invoke-Expression ($WinRAR + " a " + $zipPath + " " + $WinRARFilter + " " + $DistName + "-zip " + $WinRAROpts)
Run Code Online (Sandbox Code Playgroud)

实际执行此操作:

E:\Progs\WinRar\WinRar.exe a C:\Users\Echilon\Documents\Coding\ResourceBlender-Express\trunk\dist\resourceblender-express_1.44-zip.zip -x*\.svn\* -x*\.svn -x\.svn resourceblender-express-zip -r -s -m5 -inul
Run Code Online (Sandbox Code Playgroud)

但是没有.svn目录从zip文件中排除.这曾经工作,我不知道为什么现在没有,但我不能让它排除正确的文件.

完整脚本位于http://resourceblender.codeplex.com/sourcecontrol/changeset/view/27742?projectName=resourceblender#456701(位于脚本底部)的codeplex上

那些有一些PowerShell经验的人能否对此有所了解?

小智 12

我有同样的问题,使用以下方法解决:

-x*.svn\
Run Code Online (Sandbox Code Playgroud)

我在Windows上使用WinRar v3.93.请注意最后的反斜杠.


小智 11

正确的方法是执行一个svn导出,它将创建一个没有.svn目录的项目副本(以及其他任何不受版本控制的东西),然后执行zip.