У меня есть пакет, который я создаю с помощью CI-сервера. Я могу сжать весь каталог, используя что-то вроде tar -zcvf filename.tgz .
, но я не хочу включать файлы в мой .npmignore. Например, я не хочу включать /src
, .gitignore
, junit.xml
и несколько других каталогов.
Как создать артефакт, похожий на опубликованную версию пакета?
Полагаю, одним из решений является использование --exclude
.
tar --exclude="./src" --exclude=".gitignore" --exclude="junit.xml" -zcvf filename.tgz .
Или используйте --include
:
tar -zcvf filename.tgz --include="./lib" --include=".babelrc.js" --include=".eslint.js" --include="package.json"
Однако мне не нравится ни одно из этих решений, потому что мне приходится вручную обновлять два места (.npmignore и эту команду) каждый раз, когда я добавляю файл / каталог в проект.