commitizen / commitizen/cz-cli

Wizard exits into vim/COMMIT_EDITMSG

未关闭
#934 14 条评论 8 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
JavaScript
星标
17.5k
派生
566
平均合并
8 小时 16 分钟
30 天内合并 PR
1

描述

Hi,

Hoping for a bit of guidance,

I have setup this package following the instructions and have the wizard running. This uses husky and the `prepare-commit-message` hook runs `exec < /dev/tty && npx --no-install git-cz --hook || true`.

Then the `commit-msg` hook runs `npx --no -- commitlint --edit "\${1}"` to lint the commit message.

Relevant package versions:
```
"@commitlint/cli": "^16.2.4",
"@commitlint/config-conventional": "^16.2.4",
"@commitlint/cz-commitlint": "^16.2.4",
"commitizen": "^4.2.4",
"cz-customizable": "^6.3.0",
```

The trouble i'm facing is that every time i complete the wizard i'm dumped back into the vim in what looks like the `COMMIT_EDITMSG` git hook asking me to enter a commit message, and have to `:q` to exit which is annoying. Linting then runs after this as expected.

Steps to reproduce:

1. Run `git commit -a` in terminal
2. Proceed through wizard and choose `Yes` to the `confirmCommit` message.
3. Vim starts, `:q` to exit
4. Linting runs.

If i comment out the linting stage i do not enter the `COMMIT_EDITMSG` hook, so from what i can tell, this opens because the `--edit` flag of Commitlint says:
`read last commit message from the specified file or fallbacks to ./.git/COMMIT_EDITMSG` so looking at my lint command `npx --no -- commitlint --edit "\${1}"` - is the path/file not being passed correctly from cz to commitlint? Or is the git process thinking it also needs to launch?

Thanks

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。