Answers:
正确的表达式是-x *.git*
,因此完整的命令应该是:
zip -r bitvolution.zip bitvolution -x *.git*
来自http://selfsolved.com/problems/zip-command-exclude-svn-director的说明:
正确的咒语是
zip -9 -r --exclude=*.svn* foo.zip [directory-to-compress]
您也可以添加一个
--exclude=*.DS_Store*
以排除烦人的Mac OS X目录显示元数据文件。注意,传递给的表达式
--exclude
使用整个原始相对目录路径作为要匹配的原始字符串。因此.svn/*
,它本身是行不通的。前面的通配符确保其与.svn
目录树中任何位置的目录匹配。
--exclude /.git*
。
-x \*.git\*
noglob zip -r out.zip someFolder -x *someExcludedFolder*
如果您要压缩存储在Git中的项目,请使用git archive
命令。从源目录中:
git archive -o bitvolution.zip HEAD
您可以使用任何提交或标记ID,而不是HEAD
在某个时候归档项目。
如果要为每个文件添加前缀(例如,顶级文件夹):
git archive -o bitvolution.zip --prefix=bitvolution/ HEAD
例如,您还可以在0(无压缩)和9(最大压缩)之间调整压缩级别。
git archive -o bitvolution.zip -9 HEAD
有关其他选项,请参见帮助页面(git help archive
)。
假设正在执行此操作的计算机上已安装git,则还可以使用git本身来创建存档。
git archive --format=zip HEAD -o bitvolution.zip
zip --exclude '*.git*' -r directory.zip directory
或zip --exclude \*.git\* -r directory.zip directory