commitizen / commitizen/cz-cli

Config with prepare-commit-msg blocks squashing via interactive rebase

Đang mở
#669 2 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
JavaScript
Star
17.5k
Fork
566
Merge trung bình
8 giờ 16 phút
Pull request đã merge (30 ngày)
1

Mô tả

Hello, first off thanks for making this wonderful library.

I'm currently using husky to enforce commitizen on every commit. It's been working fine, however, there are times when I need to manually squash certain commits. To do this, [I use an interactive rebase (ex: `git rebase -i HEAD~4`)](https://github.com/todotxt/todo.txt-android/wiki/Squash-All-Commits-Related-to-a-Single-Issue-into-a-Single-Commit). Whenever I do this it gets stuck and the rebase has to abort.

I've tried the [following solution](https://gmurphey.github.io/2013/02/02/ignoring-git-hooks-when-rebasing.html#.XV3d2pNKgqs):

```
#!/bin/sh
BRANCH_NAME=$(git branch | grep '*' | sed 's/* //')

if [ $BRANCH_NAME != '(no branch)' ]
then
exec < /dev/tty && git-cz --hook || true
fi
```

However, it doesn't work, I presume, when in the squashing step. It just freezes.

I've also had trouble running `yarn version --no-commit-hooks` and `yarn config set version-commit-hooks false`, which also freezes

Any idea on how to get around this?

Update: for husky v2.4.0 and above, it seems like you can use `HUSKY_SKIP_HOOKS=1 git rebase ...`. I'll go this route for now, however, I'll leave the issue open in case there's a better alternative for those not using husky

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.