Как работает версия npm?
Я немного смутный о том, как npm version
работает. В документации сказано:
Если запустить git-репо, он также создаст версию и тэг.
Значит ли это, что мне не нужно бежать git commit
или же git tag
или это просто заменит git tag -a <version>
? Если бы я сделал что-то подобное, я бы создал двойной коммит?
git add . -A
git commit -m "<commit message>"
git push origin master
npm version <patch|minor|major> -m "<version description>" ## instead of git tag -a <version> ##
git push --tags
1 ответ
Ваше понимание в основном верно
Когда вы выполняете npm version
Команда следующее сделано:
- версия пакета удара, как указано в
package.json
- создать коммит, содержащий только обновление
package.json
с сообщением, указанным при вызовеnpm version
, - создать тег git
Затем вы можете выполнить npm publish
чтобы опубликовать в реестре npm, и git отправьте ваш тег в удаленный репозиторий, когда вы считаете нужным
Длинный ответ
Что касается точных команд, которые наши выполнили, так как вы проявили интерес к этому через комментарии:
добавление файлов в постановку:
git add /path/to/package.json
Если файлы пакета lock и shrinkwrap также присутствуют, они также добавляются, как указано выше!
создание коммита:
git commit -m {version message}
что касается создания тега:
git tag {version no.} -am {version message}
или если подпись включена:
git tag {version no.} -sm {version message}
Для справки version message
является необязательным, если он исключен из ввода CLI, то по умолчанию он будет иметь значение version no.
,