我正在开发游戏(Quake 3)并使用SVN存储库来存储代码树。树还包含游戏数据(纹理,模型等)。必须将其放入PK3存档(具有不同扩展名的标准ZIP存档)。我在一个简单的脚本中使用ZIP实用程序来创建PK3存档。
我的问题是游戏数据也是版本化的,包含数据的文件夹与所有'.svn'子文件夹混杂在一起。当然,ZIP将这些子文件夹包含在存档中。游戏不需要它们。是否有一种简单的方法可以告诉ZIP从存档中排除所有'.svn'子文件夹?
答案 0 :(得分:27)
zip -r output.zip inputdir -x "**/.svn**"
这将排除以任何子文件夹中的“.svn”开头的所有内容
答案 1 :(得分:4)
为什么不让脚本导出没有.svn
目录的源树副本,而不是直接压缩源树?有一个工具:svn export。
答案 2 :(得分:1)
我使用Windows 7.
加入操作系统,您可以Right-Click
在任意文件夹上选择" Send to
"然后点击" Compressed (zipped) folder
"。
我发现了一个奇怪的问题,Windows只会压缩带有点(。)前缀的 第一个 文件夹。 Windows 7 “send to compressed (zip) folder” omits some folders whose name begins with a dot
这个怪癖(设计或神秘的特征)让我思考......
如果我创建了一个空的" 诱饵"该怎么办?点(。)前缀文件夹压缩而不是我的.svn
文件夹?
Windows不允许您简单地右键单击并创建带有点(。)前缀的文件夹
使用CMD,我跑了" mkdir .skip_svn
"在同一目录中," .svn
"文件夹在。
我用这个答案来解决这个问题:
How do I create a folder name that starts with a dot in Windows 7?
压缩目录会保留我的小诱饵" .skip_svn
"文件夹 但 会忽略" .svn
"文件夹。
没有命令行界面或第三方压缩软件可以安装
我意识到这对许多人来说可能并不理想 - 这绝不是一个明确的解决方案
这就是我需要的备份更快,现在他们占用了很多更少的空间。