Насколько я знаю, одношагового решения не существует, потому что npm и yarn не поддерживают установку напрямую из подкаталога репозитория git. См. проблемы для npm (возможно, есть более новая версия) и yarn и предыдущие вопросы о переполнении стека, включая вот этот. (Если ваш репозиторий размещен в службе, которая предлагает URL-адрес для загрузки tar-архива подкаталога репозитория, вы можете попробовать запустить npm install
по этому URL-адресу; я не использовал этот подход.)
Я предлагаю вам использовать Braid (раскрытие информации: я участник Braid), чтобы скопировать подкаталог DefinitelyTyped fork в подкаталог вашего проекта, а затем запустите npm install
(или yarn add
) в этом подкаталоге. npm
или yarn
создаст символическую ссылку из соответствующего места в node_modules
на подкаталог, поэтому TypeScript найдет объявления типа без дополнительной настройки. Поскольку репозиторий DefinitelyTyped не содержит полнофункциональных файлов package.json
для пакетов отдельных типов, вам, вероятно, потребуется создать файл package.json
в локальном подкаталоге или добавить в него отсутствующие поля перед запуском npm install
. (Вы можете просто оставить это изменение как последующее изменение зеркала Braid.)
Единственный недостаток, который я вижу в этом решении, заключается в том, что оно создает копию пакета типов в нижестоящем репозитории, который будет постоянно занимать некоторое место в репозитории. (И Braid скопирует всю историю DefinitelyTyped в ваш локальный клон нижестоящего репозитория, но это пространство может быть освобождено сборщиком мусора.)
person
Matt McCutchen
schedule
01.11.2018