【问题标题】:sync version management in npm and git在 npm 和 git 中同步版本管理
【发布时间】:2018-04-26 10:55:10
【问题描述】:

我在同一项目环境中有一个带有 git 存储库的 npm 项目。

使用 git 我使用提交和标签进行版本升级:

$ git commit -m 'my recent repo changes'    
$ git tag v1.0.1

使用 npm,我可以使用以下命令来提升我的包版本:

$ npm version patch -m 'my recent repo changes'

但如果我尝试对更改的文件进行此操作,npm 会抛出错误:git 工作目录不干净。 最后我需要用git添加和提交我的更改,但是npm包版本还是一样的。

是否可以在我的 git repo 中同步 npm 项目的版本?最佳做法是什么?

【问题讨论】:

    标签: node.js git npm version-control


    【解决方案1】:

    在升级package.json 版本之前,您确实需要保持 git repo 工作目录干净

    而且也不需要更新package.json文件中的版本和手动添加标签。

    工作流程应该是:

    • 对您的项目进行更改

      您可以修改您的项目,无需手动更新package.json中的版本。

    • 提交更改

      修改后,提交git commit -am 'message'所做的修改。

    • 升级版本

      然后通过npm version patch -m 'message' 自动更新版本。并且会为package.json版本的变化创建一个新的commit,同时添加新版本的tag。

      您可以通过显示提交历史来仔细检查新提交(例如使用命令gitk --all)。

    【讨论】:

    • 但是我得到了两个具有相同内容的提交。
    • 输出只是显示了我的 package.json 文件的差异:-1.0.0; +1.0.1。但是我的日志说,有两个提交:一个带有标签,另一个没有。没有更好的解决方案吗?
    • 所以没有标签的提交应该是你手动提交的更改。下次就让npm version patch自动更新版本吧。
    猜你喜欢
    • 2016-05-26
    • 2016-10-15
    • 1970-01-01
    • 2020-02-22
    • 1970-01-01
    • 1970-01-01
    • 2017-10-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多