欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

vscode git commit 出现 ‘node‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件

程序员文章站 2024-02-10 16:39:46
...

vscode git commit 出现 'node' 不是内部或外部命令,也不是可运行的程序 或批处理文件


电脑按安装的win10系统,重新安装了开发软件

  • vscode 1.50.1
  • nodejs 12.16.2
  • git 2.27.0.windows.1
    在代码提交的时候就出现了这个问题
PS C:\DEV\Vscode\project> git commit -m 'aa'
'node' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
PS C:\DEV\Vscode\project> node -v
v12.16.2
PS C:\DEV\Vscode\project> git --version
git version 2.27.0.windows.1
PS C:\DEV\Vscode\ims-web>

软件和环境变量都正常
git 可以下载代码但是却不能提交

思考

是不是又有提交的时候有校验导致的,而验证的插件依赖于nodejs,因此尝试提交取消验证

PS C:\DEV\Vscode\project> git commit -m "优化" --no-verify
[master ff19ba9] 优化
 1 file changed, 2 insertions(+), 2 deletions(-)

果然,去掉校验就能提交了
有没有办法不用每次提价的时候都加上 --no-verify 呢
经过对比win7和win10 的文档目录可以看到
文件路径 项目路径.git\hooks
我的项目的路径为:C:\DEV\Vscode\project.git\hooks

  • win7文件
    vscode git commit 出现 ‘node‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件
  • win10 文件
    vscode git commit 出现 ‘node‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件
    发现win10多出了很多文件
    经过一番查询这些文件的用途之后得知,删除pre-commit文件就能解决问题
    当然pre-commit在提交之前执行的一些事情,如测试,代码检查等等,详情大家可以参考
    husky
    需要安装一些依赖和配置就能正常使用
    我这里就简单粗暴的把这个文件删除,问题就解决了
PS C:\DEV\Vscode\project> git add .
PS C:\DEV\Vscode\project> git commit -m "优化"
[master 02b6049] 优化
 1 file changed, 1 insertion(+), 1 deletion(-)
PS C:\DEV\Vscode\project> git push
Enumerating objects: 13, done.
Counting objects: 100% (13/13), done.
Delta compression using up to 48 threads
Compressing objects: 100% (7/7), done.
Writing objects: 100% (7/7), 543 bytes | 271.00 KiB/s, done.
Total 7 (delta 6), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (6/6), completed with 6 local objects.
To https://github.com/mrsoa/ims-web.git
   ff19ba9..02b6049  master -> master