如何使用 Node.js 在 Windows 中创建 git 挂钩?
How to create git hooks in Windows with Node.js?
我一直在关注 this 关于如何使用 Node.js 编写 git 挂钩脚本的指南。但是,指南使用的是基于 Unix 的系统,而我 运行 在 Windows 机器上使用。
我还在 Windows 机器上的 运行ning git 挂钩上找到了 this 指南,但它没有使用 Node.js
- 我正在 运行我的 package.json 文件中设置一个 pre-install 脚本来设置自定义 git 挂钩位置。
- 我正在使用 VSCode 作为我的编辑器,当我使用 UI 进行提交等时,我希望 git 挂钩到 运行。但是我正在使用命令最初的行试图让钩子开火。
package.json 节选
"scripts": {
"preinstall": "git config core.hooksPath ./git.hooks"
},
在我的 git.hooks
文件夹中有一个 pre-commit.js
文件。
我更新了第一行以反映我想执行脚本 运行ning Node.js
前commit.js
#!C:/Program\ Files/nodejs/node.exe
console.log('Hello world!');
process.exit(1);
如果我直接 运行 这个脚本,我会收到 Microsoft JScript 编译错误 - 第 1 行字符 1 上的字符无效。
如果我进行提交,我不会收到任何错误,但什么也不会发生。
任何人都可以指导我完成在 Windows 中创建 Node.js 挂钩的过程。我宁愿自己创建一个也不愿使用软件包。
准确命名挂钩 pre-commit
,不带 .js
。
将第一行改为#!/usr/bin/env node
。但是要确保C:/Program\ Files/nodejs/node.exe
已经添加到环境变量PATH
.
放在<repo>/.git/hooks
.
使其可执行。在git-bash,运行chmod a+x <repo>/.git/hooks/pre-commit
.
现在它应该可以正常工作了。
我一直在关注 this 关于如何使用 Node.js 编写 git 挂钩脚本的指南。但是,指南使用的是基于 Unix 的系统,而我 运行 在 Windows 机器上使用。
我还在 Windows 机器上的 运行ning git 挂钩上找到了 this 指南,但它没有使用 Node.js
- 我正在 运行我的 package.json 文件中设置一个 pre-install 脚本来设置自定义 git 挂钩位置。
- 我正在使用 VSCode 作为我的编辑器,当我使用 UI 进行提交等时,我希望 git 挂钩到 运行。但是我正在使用命令最初的行试图让钩子开火。
package.json 节选
"scripts": {
"preinstall": "git config core.hooksPath ./git.hooks"
},
在我的 git.hooks
文件夹中有一个 pre-commit.js
文件。
我更新了第一行以反映我想执行脚本 运行ning Node.js
前commit.js
#!C:/Program\ Files/nodejs/node.exe
console.log('Hello world!');
process.exit(1);
如果我直接 运行 这个脚本,我会收到 Microsoft JScript 编译错误 - 第 1 行字符 1 上的字符无效。
如果我进行提交,我不会收到任何错误,但什么也不会发生。
任何人都可以指导我完成在 Windows 中创建 Node.js 挂钩的过程。我宁愿自己创建一个也不愿使用软件包。
准确命名挂钩
pre-commit
,不带.js
。将第一行改为
#!/usr/bin/env node
。但是要确保C:/Program\ Files/nodejs/node.exe
已经添加到环境变量PATH
.放在
<repo>/.git/hooks
.使其可执行。在git-bash,运行
chmod a+x <repo>/.git/hooks/pre-commit
.
现在它应该可以正常工作了。