J'essaie de créer un fichier zip à partir d'un dossier et j'aimerais exclure le .git
sous-dossier du fichier zip résultant.
Je suis allé dans le dossier parent de celui que je veux compresser ( appelé bitvolution ) et je fais:
zip -r bitvolution.zip bitvolution -x ".git"
Mais cela n'exclut pas le .git
sous-dossier.
J'ai essayé différentes combinaisons, -x .git*
, -x \.git/*
, -x .git/\*
, -x \.git/\*
. J'ai aussi essayé d'utiliser le chemin complet pour l'argument d'exclusion ... mais je n'y suis pas parvenu.
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*
Si vous essayez de compresser un projet stocké dans Git, utilisez la
git archive
commande. Depuis le répertoire source:Vous pouvez utiliser n'importe quel ID de validation ou de balise au lieu d'
HEAD
archiver le projet à un moment donné.Si vous souhaitez ajouter un préfixe (par exemple, un dossier de niveau supérieur) à chaque fichier:
Vous pouvez également régler le niveau de compression entre 0 (pas de compression) et 9 (compression maximale) inclus, par exemple
Pour d'autres options, voir la page d'aide (
git help archive
).la source
J'ai ajouté une barre oblique inverse:
page de manuel sur la barre oblique inversée:
la source
En supposant que git soit installé sur votre machine, vous pouvez également utiliser git pour créer votre archive.
la source
Si vous utilisez zsh, la commande devrait ressembler à ceci:
Si vous utilisez:
zip -r target_name.zip source_dir -x /*.git/*
. sans 'regex', zsh traitera avant l'exécution du zip. Vous obtiendrez un message d'erreur:la source