Estou tentando criar um arquivo zip de uma pasta e gostaria de excluir a .git
subpasta do arquivo zip resultante.
Eu fui para a pasta pai da pasta que quero compactar ( chamada bitvolution ) e estou fazendo:
zip -r bitvolution.zip bitvolution -x ".git"
Mas isso não exclui a .git
subpasta.
Eu tentei várias combinações, -x .git*
, -x \.git/*
, -x .git/\*
, -x \.git/\*
. Eu também tentei usar o caminho completo para o argumento de exclusão ... mas simplesmente não cheguei lá.
zip --exclude '*.git*' -r directory.zip directory
ouzip --exclude \*.git\* -r directory.zip directory
--exclude /.git*
.-x \*.git\*
noglob zip -r out.zip someFolder -x *someExcludedFolder*
Se você estiver tentando compactar um projeto armazenado no Git, use o
git archive
comando De dentro do diretório de origem:Você pode usar qualquer ID de confirmação ou tag em vez de
HEAD
arquivar o projeto em um determinado momento.Se você deseja adicionar um prefixo (por exemplo, uma pasta de nível superior) a cada arquivo:
Você também pode ajustar o nível de compactação entre 0 (sem compactação) e 9 (compactação máxima) inclusive, por exemplo
Para outras opções, consulte a página de ajuda (
git help archive
).fonte
Adicionei barra invertida:
página de manual sobre barra invertida:
fonte
Supondo que você tenha o git instalado na máquina em que está fazendo isso, também poderá usar o próprio git para criar seu arquivo.
fonte
Se você estiver usando zsh, o comando deve se parecer com:
Se você usar:
zip -r target_name.zip source_dir -x /*.git/*
. sem 'regex', o zsh será processado antes da execução do zip. Você receberá uma mensagem de erro:fonte