代码之家  ›  专栏  ›  技术社区  ›  Remi

更新软件包中的版本。json没有干净的git工作目录(没有像Gulp这样的任务运行程序)

npm
  •  0
  • Remi  · 技术社区  · 7 年前

    运行时: npm version prepatch 我得到一个错误:“Git工作目录不干净。”然后是尚未提交的文件列表。

    然而,我想做这个预发布,使用私有npm注册表在本地测试一些东西。这意味着我还不必使用Git提交文件。

    是否可以更新软件包中的版本。json没有干净的git工作目录?

    1 回复  |  直到 7 年前
        1
  •  33
  •   Phil Hayward    7 年前

    从npm版本文档 https://docs.npmjs.com/cli/version :

    如果在git repo中运行,它还将创建一个版本提交和标记。这种行为由git标记版本(见下文)控制,可以在命令行上通过运行npm——无git标记版本来禁用。如果工作目录不干净,它将失败,除非设置了-f或--force标志。

    我不能100%确定您是否只需要--no git标签版本,或者是否还需要--force标志。

        2
  •  1
  •   Learner    4 年前

    你可以用 git stash .

    例如。

    git stash 
    npm version patch 
    git stash pop
    

    这将临时重置工作目录(删除未提交的更改)。那你就可以跑了 npm version {major|minor|patch} .之后,使用 git stash pop 将重新将未提交的更改应用于工作目录。

    辅导的: https://www.atlassian.com/git/tutorials/saving-changes/git-stash#stashing-your-work