Как получить версию текущего пакета, используя только npm - PullRequest
0 голосов
/ 05 декабря 2018

Как мне получить текущую версию из package.json, используя npm?

Я знаю, что npm version выведет версию моего пакета вместе с npm и другими зависимостями.Но мне нужна короткая команда, чтобы на CI использовалась только версия пакета.Поэтому в идеале не нужно никаких дополнительных данных, так как CI не знает, с каким проектом он имеет дело.

npm version from-git --allow-same-version также будет работать, если он не попытается пометить новую версию в Git.

Ответы [ 2 ]

0 голосов
/ 20 июня 2019

Если использование grep и sed не является проблемой для вас, это работает довольно хорошо для меня:

VERSION_NUMBER=$(npm version | grep @ | sed -re "s/\{ '.*': '(.*)',?/\1/g")

Пояснения:

  • npm versionдает вам всю информацию
  • grep @ ловит строку, где у вас есть версия
  • sed -re "s/\{ '.*': '(.*)',?/\1/g" заменяет текст только номером версии
0 голосов
/ 05 декабря 2018

Нет прямой команды npm, чтобы показать только версию вашего пакета, но вы можете использовать этот хак из папки вашего проекта:

node -e "console.log(require('./package.json').version);

Если вы хотите использовать команду npm, вы можете заключить ее в«скрипт» в вашем package.json файле:

"scripts": {
    "version": "node -e "console.log(require('./package.json').version);"
}

Теперь вы можете запустить npm run version, чтобы получить версию вашего пакета

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...