npm устанавливает библиотеку приватных узлов из gitlab - PullRequest
0 голосов
/ 26 апреля 2019

Я создал библиотеку (страну) в gitlab, которую я хочу установить в другом проекте. Эта библиотека использует другую мою библиотеку (dataloader). Когда я запускаю npm i в моем проекте, он устанавливает страну, но затем создает еще один node_modules внутри страны с загрузчиком данных. Я хочу библиотеку загрузчика данных в главном node_modules. Я не могу понять, почему пакет dataloader не включается в проект node_modules

Example Project
|
+--node_modules
  |
  +--country
     |
     +--node_modules
       |
       +--dataLoader

но когда я пытаюсь использовать npm, установить git + http://xxxxxxxxx/countries.git#master создать структуру папок, какую я хочу.

или

опубликуйте этот репозиторий dataloader на npm и используйте путь к версии dataloader в package.json, затем я запускаю npm install, затем создаю структуру папок, какую я хочу.

Example Project
|
+--node_modules
  |
  +--country
  +--dataLoader

Страна Package.json

{
  "name": "countries",
  "version": "1.0.0",
  "description": "An array of countries contains Iso country code,country name,has postal code(boolean value),zip regex etc",
  "main": "index.js",
  "scripts": {
    "test": "CONFIGURATION='test/testConfig.json' mocha"
  },
  "dependencies": {
    "dataloader": "git+http://xxxxxxxxxx/foundation/reference-data/dataloader.git#master",
    "lodash": "^4.17.11"
  },
  "devDependencies": {
    "chai": "^4.2.0",
    "mocha": "^6.0.2"
  }
}

Пример проекта package.json

{
  "name": "example",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "start": "env NODE_ENV='debug'  node country.js"
  },
  "repository": {
    "type": "git",
    "url": "https://git.xxxx.com/xxx/xx/example.git"
  },
  "author": "",
  "standard": {
    "env": [
      "mocha"
    ]
  },
  "license": "ISC",
  "dependencies": {
    "countries": "git+http://xxxxx/foundation/reference-data/countries.git#master"
  }
}

Я ожидаю, что при запуске npm будет создана структура папок установки, как показано ниже, но я не хочу публиковать свою библиотеку на npm, я хочу, чтобы она была приватной на gitlab

Example Project
|
+--node_modules
  |
  +--country
  +--dataLoader
...