5个版本

0.1.4 2023年10月11日
0.1.3 2023年7月9日
0.1.2 2023年6月19日
0.1.1 2023年6月13日
0.1.0 2023年6月10日

#111机器学习

每月 21 次下载

MIT 许可证

125KB
79

GAI (Git + AI)

GAI (Git + AI) 是一个用Rust编写的命令行界面(CLI)工具,它利用OpenAI模型从标准输入(stdin)读取,通过分析git diff来生成有意义的提交信息。它结合了Git的强大功能和高级语言模型,自动化基于Git仓库变更的创建有意义且简洁的提交信息的过程。

功能

  • 使用OpenAI模型分析git diff并生成描述性提交信息。
  • 无缝集成Git,简化提交过程。
  • 节省手动编写提交信息的时间和精力。

入门指南

先决条件

在开始使用GAI之前,请确保您的系统已安装以下先决条件

安装

要安装GAI,请按照以下步骤操作

从crates.io

cargo install gai

从代码

  1. 克隆GAI仓库

    git clone https://github.com/dpecos/gai.git
    
  2. 进入克隆的仓库目录

    cd gai
    
  3. 使用Cargo构建和安装GAI

    cargo install --path .
    

    这将构建GAI并将其安装到您的系统。

配置

GAI需要OpenAI API密钥才能运行。在使用GAI之前,请确保已使用您的OpenAI API密钥设置OPENAI_API_KEY环境变量。

export OPENAI_API_KEY=<your-openai-api-key>

使用方法

要使用GAI,请按照以下步骤操作

  1. 导航到您的Git仓库的根目录。

  2. 运行git diff命令以生成更改的diff。

  3. 将git diff输出通过管道传递到GAI

    git diff | gai
    

    (注:您也可以通过 git diff --cached 从您的暂存更改中传递差异)

    GAI 将使用 OpenAI 模型处理来自 git diff 的输入,并根据更改生成提交信息。

    注意: GAI 从标准输入(stdin)读取,因此请确保正确地管道 git diff 输出。

  4. 审查生成的提交信息,并根据需要做出调整。

  5. 使用生成的提交信息提交您的更改

    git commit -m "$(git diff | gai)"
    

    这将创建一个新的带有生成提交信息的提交。

另一种选择是定义一个将一切整合在一起的 shell 别名

alias gaic='git diff --cached | gai | git commit -F -'

但如果这感觉太匆忙,并且您想手动确认提交信息,可以使用 ays 如此

alias gaic='git diff --cached | gai | ays --preview "Use this message for the commit?" | git commit -F -'

这就是您的流程看起来像什么

gai

贡献

欢迎对 GAI 的贡献!如果您发现任何问题或对改进有建议,请随时在 GitHub 仓库 中打开一个问题或提交一个拉取请求。

在贡献之前,请查看 贡献指南 以获取重要信息。

许可

GAI 在 MIT 许可证 下许可。您可以自由使用、修改和分发此项目,按照许可证条款。

致谢

GAI 由 Daniel Pecos Martinez 创建。特别感谢所有帮助使此项目更好的贡献者。

联系

如果您有任何问题、建议或反馈,可以通过 [email protected] 联系项目负责人。

编码愉快!

依赖

~5–18MB
~257K SLoC