Ошибка предварительной фиксации

Я использую NestJs для своего нового проекта.

Я добавляю все файлы с помощью этой команды. git add .

когда я совершаю фиксацию после добавления всех файлов, хаски предотвращает фиксацию и показывает мне эту ошибку.

[путь к файлу] /. spec.ts 'не включен в проект.

хаски> не удалось выполнить предварительную фиксацию (добавьте --no-verify для обхода)

Я неявно добавил файл, но он все еще выдает мне эту ошибку.

мой файл tsconfig.json

{
  "compilerOptions": {
    "module": "commonjs",
    "declaration": false,
    "noImplicitAny": false,
    "removeComments": true,
    "noLib": false,
    "allowSyntheticDefaultImports": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es6",
    "sourceMap": true,
    "allowJs": true,
    "outDir": "./dist",
    "baseUrl": "./src",
    "lib": ["dom", "es2018", "esnext"]
  },
  "include": ["src/**/*"],
  "exclude": ["node_modules", "**/*.spec.ts"]
}

и вот так я добавил команды хаски в файл package.json

 "scripts": {
    "lint": "tslint -p tsconfig.json -c tslint.json",
  },


"husky": {
    "hooks": {
      "pre-commit": "lint-staged",
      "post-commit": "git push origin HEAD"
    }
  },
  "lint-staged": {
    "*.ts": [
      "tslint -p tsconfig.json -c tslint.json",
      "git add"
    ]
  },

person Dulara Malindu    schedule 08.01.2019    source источник
comment
Вы запускаете команды lint-staged в ловушке pre-commit и ожидаете, что они изменят то, что будет зафиксировано?   -  person bk2204    schedule 08.01.2019
comment
Я использовал это решение для решения своей проблемы stackoverflow.com/a/63948896/1862590   -  person Sathia    schedule 16.04.2021


Ответы (2)


Если вы используете ОС Windows, сценарий хуков, который будет включен в ваш package.json, должен иметь следующую форму:

"husky": {
    "hooks": {
      "pre-push": "set CI=true&&npm test"
    }
  },

Для другой операционной системы используйте приведенный ниже фрагмент

 "husky": {
 "hooks": {
 "pre-push": "CI=true npm test"}},

Дополнительная информация: https://facebook.github.io/create-react-app/docs/running-tests#on-your-own-environment

person Alabi Temitope    schedule 28.10.2019

Может ли быть так, что ваш хук предварительной фиксации не работает, потому что у вас есть "**/*.spec.ts" как значение в свойстве exclude в вашем файле tsconfig.json?

Не могли бы вы отредактировать такой файл и протестировать его:

{
  "compilerOptions": {
    "module": "commonjs",
    "declaration": false,
    "noImplicitAny": false,
    "removeComments": true,
    "noLib": false,
    "allowSyntheticDefaultImports": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es6",
    "sourceMap": true,
    "allowJs": true,
    "outDir": "./dist",
    "baseUrl": "./src",
    "lib": ["dom", "es2018", "esnext"]
  },
  "include": ["src/**/*"],
  "exclude": ["node_modules"]
}
person Ivan Vasiljevic    schedule 08.01.2019