| ▲ | IshKebab 7 hours ago |
| As well, not instead. Just add `pre-commit run -a` to your CI. Job done. It's still annoying for new contributors though because they might not know how to set up pre-commit (which was quite a pain until recently because it's written in Python). |
|
| ▲ | Flimm 7 hours ago | parent [-] |
| To clear up any confusion, Git runs pre-commit hooks, and they can be written in any programming language. There's a completely separate and independent project that gave itself the confusing "pre-commit" name, and it is written in Python. This project aims to make it easier to configure pre-commit hooks. An alternative to it is "prek", written in Rust. |
| |
| ▲ | sgarland 6 hours ago | parent [-] | | Yes, and I hate it so, so much, and frankly don’t get the appeal. You want one-click installation of hooks? Bundle a shell script called run_first.sh that symlinks the hooks into .git. | | |
| ▲ | jayd16 2 hours ago | parent | next [-] | | That doesn't automate the maintenance of the hooks, doesn't handle cross branch differences, opens you up to all kinds of security holes because now it'll just do whatever the hook points to which is likely to be in the repo and not in some special higher scrutiny flow... All the push back to making this system good just ensures its as terrible as the nay-sayers fear. | |
| ▲ | IshKebab 5 hours ago | parent | prev [-] | | The pre-commit tool does way more than that. For example the clang-format hook will download and run a specific version of clang-format. |
|
|