最近,我尝试将husky集成到应用程序中以进行预提交格式设置。我只使用rubocop来测试提交,但是在尝试提交时却给出了错误。
我的package.json
{
"name": "asdf",
"private": true,
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"lint-staged": {
"{app,spec}/**/*.rb": [
"bin/rubocop --require rubocop-rspec --safe-auto-correct",
"git add"
]
},
"devDependencies": {
"husky": "^1.3.1",
"lint-staged": "^8.1.5"
}
}
它给出的错误
husky > pre-commit (node v8.15.1)
↓ Stashing changes... [skipped]
→ No partially staged files found...
❯ Running linters...
❯ Running tasks for {app,spec}/**/*.rb
✖ bin/rubocop --require rubocop-rspec --safe-auto-correct
git add
✖ bin/rubocop --require rubocop-rspec --safe-auto-correct found some errors. Please fix them and try committing again.
/usr/lib/ruby/vendor_ruby/bundler/definition.rb:489:in `validate_ruby!': Your Ruby version is 2.5.1, but your Gemfile specified 2.5.0 (Bundler::RubyVersionMismatch)
我的rvm
=* ruby-2.5.0 [ x86_64 ]
ruby-2.5.3 [ x86_64 ]
ruby-2.6.1 [ x86_64 ]
注意:rails server
运行得很好,其他所有命令也是如此。
答案 0 :(得分:0)
更新ruby
中的Gemfile
版本:
ruby "2.5.1"
它偶尔运行(因为2.5.0
和2.5.1
之间没有太多区别),并且“运行成功”基本上没有任何意义。