#commit-message #git-commit #git-hook #git #message-parser #linter

mit-commit

用于构建提交代码检查器。这使得它更简单。

58个稳定版本

3.2.0 2024年7月26日
3.1.8 2023年9月12日
3.1.7 2023年5月24日
3.1.6 2023年3月7日
0.17.0 2020年6月30日

#272解析器实现

Download history 113/week @ 2024-04-22 168/week @ 2024-04-29 139/week @ 2024-05-06 93/week @ 2024-05-13 114/week @ 2024-05-20 92/week @ 2024-05-27 174/week @ 2024-06-03 284/week @ 2024-06-10 120/week @ 2024-06-17 51/week @ 2024-06-24 83/week @ 2024-07-01 178/week @ 2024-07-08 187/week @ 2024-07-15 565/week @ 2024-07-22 1002/week @ 2024-07-29 457/week @ 2024-08-05

2,215 每月下载量
10crate (6 直接)

CC0 许可证

115KB
2K SLoC

mit-commit

一个用于在git钩子中解析提交消息的库

use indoc::indoc;
use mit_commit::{Bodies, CommitMessage, Subject};

let message = CommitMessage::from(indoc!(
    "
    Update bashrc to include kubernetes completions

    This should make it easier to deploy things for the developers.
    Benchmarked with Hyperfine, no noticable performance decrease.

    ; Bitte geben Sie eine Commit-Beschreibung f\u{00FC}r Ihre \u{00E4}nderungen ein. Zeilen,
    ; die mit ';' beginnen, werden ignoriert, und eine leere Beschreibung
    ; bricht den Commit ab.
    ;
    ; Datum:            Sat Jun 27 21:40:14 2020 +0200
    ;
    ; Auf Branch master
    ;
    ; Initialer Commit
    ;
    ; Zum Commit vorgemerkte \u{00E4}nderungen:
    ;    neue Datei:     .bashrc
    ;"
));
assert_eq!(
    message.get_subject(),
    Subject::from("Update bashrc to include kubernetes completions")
)

更多请参阅 Docs.rs


lib.rs:

一个用于在git钩子中解析提交消息的库

使编写lint和git钩子更加简单

示例

use indoc::indoc;
use mit_commit::{Bodies, CommitMessage, Subject};

let message = CommitMessage::from(indoc!(
    "
    Update bashrc to include kubernetes completions

    This should make it easier to deploy things for the developers.
    Benchmarked with Hyperfine, no noticable performance decrease.

    ; Bitte geben Sie eine Commit-Beschreibung f\u{00FC}r Ihre \u{00E4}nderungen ein. Zeilen,
    ; die mit ';' beginnen, werden ignoriert, und eine leere Beschreibung
    ; bricht den Commit ab.
    ;
    ; Datum:            Sat Jun 27 21:40:14 2020 +0200
    ;
    ; Auf Branch master
    ;
    ; Initialer Commit
    ;
    ; Zum Commit vorgemerkte \u{00E4}nderungen:
    ;    neue Datei:     .bashrc
    ;"
));
assert_eq!(
    message.get_subject(),
    Subject::from("Update bashrc to include kubernetes completions")
)

依赖项

~4–5.5MB
~96K SLoC