xtools

Crates.ioxtools
lib.rsxtools
version0.0.0
sourcesrc
created_at2020-07-31 09:32:47.944754
updated_at2020-07-31 09:32:47.944754
descriptionA binary used for cross-platform git hooks.
homepagehttps://github.com/SirWindfield/xtools
repositoryhttps://github.com/SirWindfield/xtools
max_upload_size
id271589
size19,018
mainrs (mainrs)

documentation

README

xtools

Maintenance crates.io crates.io Documentation docs_master_badge

Git hooks written in Rust and delivered as a git submodule.

Usage

Usually, I add the binary as a workspace member to a project of mine. You can register it as a git submodule as well, allowing you to keep the local copy up-to-date with the remote version. You can then setup an alias inside your .cargo/config folder:

xtools = "run --package xtools --bin xtools --"

This allows you to run the utility binary using cargo xtools.

Features

xtools provides some utility binaries that can be used to create custom git hooks. Here is a (non-exhaustive) list:

  • git:
    • check for clean workspace flow
    • various hooks, for example pre-commit that checks that cargo clippy && cargo fmt -- --check succeed without errors.
  • rust:
    • clippy flow
    • rustfmt flow

To modify the git hooks and run custom flows, you can simply modify the source code. The hooks get compiled alongside your Rust project, which creates a natural development environment for your git hooks.

Current Properties

  • MSRV: 1.41.0 (tested)

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Commit count: 0

cargo fmt