commitizen / commitizen/cz-cli

Wizard exits into vim/COMMIT_EDITMSG

Aperta
#934 14 commenti 8 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
JavaScript
Stelle
17.5k
Fork
566
Merge medio
8h 16m
PR unite (30g)
1

Descrizione

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

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia riproducendo `git commit -a` con i comandi degli hook `prepare-commit-message` e `commit-msg` mostrati, quindi traccia il modo in cui la procedura guidata passa a `COMMIT_EDITMSG`. Il lavoro è completato quando la procedura guidata termina senza aprire Vim, mentre `commitlint --edit "${1}"` continua a essere eseguito correttamente.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
git, javascript
Ambito
cli, developer-experience, tooling
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
38/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.