为什么 eslint 在 Github Actions 上失败但在本地工作?



我有一个看起来像这样的工作流程

name: Node CI
on: [push]
jobs:
build:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: '12.x'
- run: npm install
- run: npm run lint

由于某种原因,lint 阶段失败并产生以下错误

> eslint . --ext .js,.jsx,.ts,.tsx

/home/runner/work/ABC/ABC/src/components/folder/Folder.tsx
##[error]  6:20  error  Missing file extension for "../../styles/Colors"        import/extensions
##[error]  6:20  error  Unable to resolve path to module '../../styles/Colors'  import/no-unresolved
/home/runner/work/ABC/ABC/src/components/todo/header/Heading.tsx
##[error]  4:20  error  Missing file extension for "../../../styles/Colors"        import/extensions
##[error]  4:20  error  Unable to resolve path to module '../../../styles/Colors'  import/no-unresolved

/home/runner/work/ABC/ABC/src/screens/TodoScreen.tsx
##[error]  3:20  error  Missing file extension for "../styles/Colors"        import/extensions
##[error]  3:20  error  Unable to resolve path to module '../styles/Colors'  import/no-unresolved
✖ 6 problems (6 errors, 0 warnings)

当我在本地运行npm run lint时,它成功通过。

我试过运行npm ci然后npm run lint,它仍然通过

事实证明,这是一个文件大小写敏感性问题。

../../styles/Colors之前被我重命名为../../styles/colors(小写(

但是由于某种原因,git 没有选择这个。我必须手动执行此操作git mv

最新更新