首页 > 解决方案 > 由于合并冲突,无法恢复未暂存的更改

问题描述

当我执行git commit -m "commit message"命令时,lint-staged 显示此错误:

在此处输入图像描述

我在 package.json 中的配置:

"husky": {
    "hooks": {
        "pre-commit": "npm run validate && lint-staged"
    }
},
"lint-staged": {
    "*.+(js|ts|tsx)": [
        "eslint"
    ],
    "**/*.+(js|json|ts|tsx)": [
        "prettier --write"
    ]
},

它在mac上运行良好,但windows-10显示此错误。谁能告诉我windows出了什么问题?

标签: gitgit-commitgit-huskylint-staged

解决方案


鉴于显示的消息:我认为这个钩子运行

  1. git stash -k(存储不在索引中的所有内容)
  2. 重新格式化暂存代码,然后运行git add
  3. git stash pop

在您的 Windows 机器上,您恰好处于以下配置中:

  • 一个。您有一些未上演的修改
  • 湾。当您重新格式化索引时,这些修改与索引冲突

“修复”将是:

  • 手动运行git stash -k
  • 创建你的提交(预提交钩子应该没有错误地通过)
  • git stash pop
  • 修复由此产生的冲突

推荐阅读