Компания, в которой я работаю, размещает пакеты на Gemfury. Недавно я присоединился к разработке репозитория JavaScript. Все кажется довольно стандартным, но я заметил, что артефакты сборки быстро проверяются в системе контроля версий. Поэтому, недолго думая, я добавил папку dist в .gitignore
.
Однако с тех пор пакет, размещенный на Gemfury, больше не содержит эту папку, когда мы делаем выпуск. Я сталкивался с этой проблемой раньше с пакетами NPM и всегда мог решить ее, добавив файл .npmignore
, где папка dist не упоминается. Однако в данном случае это не помогает, как и добавление области «файлы» в package.json
(все упомянутые там файлы отображаются в пакете, кроме папки dist).
Я не совсем уверен, как Gemfury создает пакет. Способ использования Gemfury заключается в том, чтобы передать ему исходный код (добавить Gemfury как удаленный и git push fury master
), и Gemfury предположительно улавливает, что ему нужно выполнить сборку, и утверждает, что успешно справился с этой задачей:
Initializing build: done.
-----> Building package...
npm package build detected
Packing my-project-1.0.0.tgz
-----> Pushing to "my-company" account
my-project-1.0.0.tgz ... ok
-----> Done!
Это все, что мне удалось выяснить, и я понятия не имею, как сделать так, чтобы папка dist снова появилась. По очевидным причинам я не хочу возвращать его обратно в систему управления версиями.
Репозиторий использует пряжу и содержит следующий скрипт сборки в package.json
:
"build": "babel src -d dist -D"