Недавно я искал репозиторий GitHub для устранения проблемы и создал запрос на перенос. Пока я жду, когда запрос на перенос будет принят, я указал на свой локальный package.json
на моем разветвленном репо, например:
devDependencies: {
"karma-mocha": "maloric/karma-mocha"
}
Однако оказывается, что karma-mocha
требует выполнения шага сборки для генерации lib/adapter.js
- важной части пакета. Этот файл указан в .gitignore
, поэтому он не существует в репозитории. Шаг сборки - это задача grunt, которая обычно выполняется, когда пакет опубликован до npm, поэтому adapter.js
существует в загруженном модуле npm.
Мой вопрос заключается в следующем: каков правильный способ упаковки разветвленной, построенной версии репозитория, чтобы я мог использовать его как зависимость? Насколько я могу судить, у меня есть следующие варианты:
- Создайте репозиторий локально, создайте файл
.tgz
со встроенными файлами, затем разместите его где-нибудь и укажите мой пакет .json в этот файл. - Создайте репозиторий локально, измените
.gitignore
, чтобы разрешитьadapter.js
, затем нажмите на ветвь в Github и используйте эту ветвь в качестве моей зависимости.
Любой из них будет работать, но я чувствую, что что-то не хватает. Есть ли у npm концепция разветвленных пакетов? Не каждый репозиторий git может использоваться как зависимость без какого-либо шага build/dist, так что это приемлемый способ сделать это?