Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Github Git钩子更新包json版本_Github_Githooks_Github For Windows - Fatal编程技术网

Github Git钩子更新包json版本

Github Git钩子更新包json版本,github,githooks,github-for-windows,Github,Githooks,Github For Windows,在我们的项目中,我们经常忘记更新Package.json文件中的版本号。我们的是AngularJS项目。在我们的包JSON文件中,我们指定了以下两个版本信息 "version": "1.0.7", "devVersion": "1.0.4" 在合并分支进行开发之前我需要一个自动脚本来更新上述两个版本号。我想Git Hooks会帮我的 在哪里可以找到钩子,我可以在本地repo的.git文件夹下看到钩子。我不知道该用哪个钩子。在谷歌上搜索意味着我必须在服务器上创建钩子 我在哪里可以找到它们,我可以

在我们的项目中,我们经常忘记更新
Package.json
文件中的版本号。我们的是AngularJS项目。在我们的包JSON文件中,我们指定了以下两个版本信息

"version": "1.0.7",
"devVersion": "1.0.4"
在合并分支进行开发之前我需要一个自动脚本来更新上述两个版本号。我想Git Hooks会帮我的

在哪里可以找到钩子,我可以在本地repo的
.git
文件夹下看到钩子。我不知道该用哪个钩子。在谷歌上搜索意味着我必须在服务器上创建钩子

我在哪里可以找到它们,我可以更新上述两个键(版本和devVersion)


请建议使用的位置和挂钩,这将解决很多问题

您有两种钩子(都存在于任何.git/hooks文件夹中):服务器钩子和客户端钩子。
它们列在“”中

合并是一种本地操作,因此,如果您想在合并过程中自动化任何进程,您需要一个客户端挂钩,如
post-commit
hook(意思是在创建合并提交之后执行)。
如果需要在合并之前更新该文件,可以尝试
预提交
钩子,并且(如果不需要,
预提交
钩子将不起任何作用,因为您只想在合并之前更新版本)

您可以在一个生成
version.json
文件的示例中看到。
If写在node中,但您可以根据需要编写任何脚本语言。

我正在使用和:

阅读更多关于

网页包或Vue.js

如果您使用的是webpack或Vue.js,则可以使用

努克斯

numxt.config.js
中:

var WebpackAutoInject = require('webpack-auto-inject-version');

module.exports = {
  build: {
    plugins: [
      new WebpackAutoInject({
        // options
        // example:
        components: {
          InjectAsComment: false
        },
      }),
    ]
  },
}
模板中
例如页脚中:

<p> All rights reserved © 2018 [v[AIV]{version}[/AIV]]</p>
版权所有©2018[v[AIV]{version}[/AIV]]

使用,它非常简单:

{
“名称”:“演示项目”,
“版本”:“0.0.3”,
“哈士奇”:{
“挂钩”:{
“预提交”:“npm--无git标记版本修补程序和git添加。”
}
}
}

注意:我把git add.放在最后,因为在我们更新包版本之后,我们需要将它与有趣的实现相关,比我的答案更精确+1我应该在哪个文件中添加此内容?
<p> All rights reserved © 2018 [v[AIV]{version}[/AIV]]</p>