天天看点

zip 压缩的时候如何 排除、不包括、去除某个文件夹 .git linux macOS

zip 压缩的时候如何 排除、不包括、去除某个文件夹 .git linux macOS

相似问题:​​https://askubuntu.com/questions/28476/how-do-i-zip-up-a-folder-but-exclude-the-git-subfolder​​

一、 zip 压缩排除指定文件夹

比如你要压缩一个文件夹 share,里面有个子文件夹 ​

​.git​

​ 此时要求在压缩的时候排除这个 .git 文件夹。

正确的指令应该是

zip -r share.zip ./share -x '*.git*'      

二、 使用 git archive 来生成项目压缩包

我们上一步的操作无非只是为了排除无用的文件。

其实如果项目中已经使用了 git,就可以直接使用 ​​

​git archive​

​ 来生成压缩包,这样里面的文件只包含已经添加到 git 中的文件。

  1. 首先进入项目文件夹中
  2. 参数​

    ​o​

    ​ 后面是生成的压缩包路径和名字
  3. 最后一个参数是版本号,如果想导出最近的,就直接写​

    ​HEAD​

    ​ 即可。
git archive -o ~/share.zip HEAD