3 ms·
Looks like this is just a clone of pre-commit, with the same general design. > pre-commit is a framework to run hooks written in many languages, and it manages
by WhyNotHugo 11mo ago
Looks like this is just a clone of pre-commit, with the same general design.
> pre-commit is a framework to run hooks written in many languages, and it manages the language toolchain and dependencies for running the hooks
The “and” here are the main annoyances with pre-commit. It does too many things, which would each be best served by a separate tool.
As a developer working on a project, I already have mechanisms to set up a development environment. Having pre-commit install another copy of the dev environment is redundant, and typically necessitates duplicating dependency declarations too.
I’d much rather see a tool that focuses on running commit hooks, while leaving dependency management to another tool. Most projects already have something in place anyway, since dependencies are necessary for development beyond the scope of pre-commit hooks.
The really useful part of pre-commit is that it: (1) only runs hooks based on file that changed and (2) stashes all unstaged changes and untracked files.
- juped 11mo agoThe latter is possibly just a Git feature that should come into existence (it's annoying to have to make sure your hook is robust against this). But I think "being a package manager" is what they think the main point is.
- hambes 11mo agoprobably not relevant to you, since it is yet another tool for managing your development environment, but maybe have a look at devenv (https://devenv.sh https://devenv.sh). it's main purpose is managing the development environment, but it has integration for pre-commit (or even prek iirc) that let's pre-commit do it's thing, but takes over the dependency management.