CMT 项目使用与配置指南
1. 项目的目录结构及介绍
CMT 项目是一个用于编写一致 Git 提交信息的工具,其目录结构如下:
.github/
: 存放与 GitHub 集成的配置文件。app/
: 包含项目的核心应用逻辑。bin/
: 存放可执行文件。docs/
: 存放项目文档和相关资料。src/
: 包含项目的源代码。templates/
: 存放预设的提交信息模板。test/
: 包含项目的单元测试代码。.bin/
: 存放项目的构建文件和脚本。.gitignore
: 指定 Git 忽略的文件和目录。.hindent.yaml
: Haskell 代码格式化配置文件。.stylish-haskell.yaml
: Haskell 代码风格配置文件。CONTRIBUTING.md
: 指导贡献者如何向项目贡献代码和文档。ChangeLog.md
: 记录项目的更新和修改历史。LICENSE
: 项目使用的许可证文件。README.md
: 项目的自述文件,介绍了项目的用途和如何使用。Setup.hs
: Haskell 项目的构建配置文件。package.yaml
: Cabal 包的配置文件。roadmap.md
: 项目的发展路线图。stack.yaml
: Stack 构建工具的配置文件。
2. 项目的启动文件介绍
CMT 项目的启动主要是通过命令行工具 cmt
来完成。该工具可以通过以下命令安装:
cabal install cmt
或者如果你使用 Stack:
stack build && stack install
安装后,可以通过以下命令来启动 CMT:
cmt
该命令将展示可用的选项,并根据用户的输入生成符合项目配置的 Git 提交信息。
3. 项目的配置文件介绍
CMT 项目的核心配置文件是 .cmt
文件,该文件定义了提交信息的格式和可用的预定义消息。
一个基本的 .cmt
文件如下所示:
# The input parts
{
"Subject" = @ # 单行输入
"Body" = !@ # 多行输入
}
# Predefined commit messages
# 此部分可选
{
vb = "version bump"
}
# The output format
$
{Subject}
$
{Body}
在 .cmt
文件中,可以定义输入部分(如 Subject
和 Body
),预定义消息(如 vb
),以及输出格式。输出格式决定了最终的提交信息将如何展示。
例如,一个更复杂的 .cmt
文件可能包含类型、范围、主题、正文和脚注等字段,并使用这些字段来生成符合特定风格的提交信息。
通过编辑 .cmt
文件,用户可以定制化他们的提交信息风格,以符合项目的需求和规范。