#git-commit #git #hash #cli #object #artist #tree-hash

app commit_artist

Git提交哈希美化器

2 个稳定版本

1.0.1 2020年2月26日
1.0.0 2020年2月23日

#646命令行界面

MIT 许可证

18KB
417 代码行

crates.io license CI

Commit Artist

一个用于美化Git仓库最新提交的CLI工具。

DEMO

使用方法

安装Commit Artist

$ cargo install commit_artist

$ cd <your_working_dir>

$ git log -1 --format=%H
86637c3f206d228df1dc1dafa49d31b159b8a358

$ commit_artist -p 1234567
173015040 hashes calculated...
Yay! Now your new hash of the latest commit is 12345672abd92a159f3886e08951f29ee7ce0041.

$ git log -1 --format=%H
12345672abd92a159f3886e08951f29ee7ce0041

命令行选项

  • [--path] 工作目录的路径。默认:当前目录
  • [--pattern, -p] 匹配模式。默认:0000000
  • [--block, -b] log[2](每个线程应计算多少个哈希值)。默认:20
  • [--jobs, -j] 将要生成的线程数以暴力破解。默认:最大值 - 1

工作原理

architecture

Git的提交哈希是从提交对象生成的。
提交对象由"树哈希"、"父哈希"、"作者信息"、"提交者信息"和"提交消息"组成。
作者信息和提交者信息各自包含"姓名"、"电子邮件地址"和"时间戳"。

在这些属性中,最容易配置的是(即使提交完成后)提交者的姓名。
更改它可能会对提交哈希产生几乎没有任何影响。

因此,提交完成后,通过运行Commit Artist,通过更改提交者的姓名并计算提交哈希并循环直到它变得美观,最终可以获取一个具有复杂哈希的提交。

免责声明

自行承担使用此工具的责任。
此工具对签名提交完全无能为力。

依赖项

~7MB
~110K SLoC