{
"title": "改善 Git 工作:使用 Gptcommit 编写更自然的提交Commit",
"tags": [
"post",
"小知识"
],
"sources": [
"xlog"
],
"external_urls": [
"https://52ziji.cn/gai-shan-Git-gong-zuo-%EF%BC%9A-shi-yong-Gptcommit-bian-xie-geng-zi-ran-de-ti-jiao-Commit"
],
"date_published": "2023-03-24T02:15:34.621Z",
"content": "Gptcommit 是一个基于自然语言生成模型 GPT 的 Git 提交消息生成工具。它可以帮助开发者以更加自然的方式编写 Git 提交消息,从而提高代码可读性和可维护性。在本文中,我们将介绍如何安装和使用 Gptcommit。\n\n## 官方演示\n\n[![asciicast](https://asciinema.org/a/552380.svg)](https://asciinema.org/a/552380)\n\n## 安装\n\n安装 Gptcommit 非常简单,您只需按照以下步骤进行操作即可。\n\n1. 本地安装\n\nGptcommit 是一个 Rust 应用程序,因此您需要先安装 Rust 工具链。您可以从 [Rust 官网](https://www.rust-lang.org/tools/install) 下载并安装 Rust。一旦 Rust 工具链安装完成,您就可以使用 Cargo 命令来安装 Gptcommit。在终端或命令行窗口中输入以下命令:\n\n```\ncargo install --locked gptcommit\n```\n\n此命令会下载 Gptcommit 的源代码并构建可执行文件。构建完成后,Gptcommit 会被安装到您的系统默认路径下。\n\n**在macOS 上安装**\n\n```\nbrew install zurawiki/brews/gptcommit\n```\n2. 在您的git存储库中,运行以下命令以安装gptcommit为 `git prepare-commit-msg` 挂钩。您需要提供 OpenAI API 密钥才能完成安装。\n```\ngptcommit install\n```\n\n\n\n如果您遇到任何安装问题,请参考 [Gptcommit 官方文档](https://github.com/zurawiki/gptcommit) 以获取更多信息。\n\n## 使用\n\n要使用gptcommit,只需`git commit`照常运行即可。该挂钩将使用 GPT 等大型语言模型自动为您生成提交消息。如果您对生成的消息不满意,您可以在提交之前随时对其进行编辑。\n\n注意:默认情况下,gptcommit使用 GPT-3 模型。请确保您的 OpenAI 帐户中有足够的信用额度来使用它。\n\n### 设置 OpenAI API 密钥和URL\n1. 全局设置\n```\n#api\ngptcommit config set openai.api_key sk-...\n```\n```\n#url\ngptcommit config set openai.api_base https://...\n```\n2. repo局部设置\n```\n#api\ngptcommit config set --local openai.api_key sk-...\n```\n```\n#url\ngptcommit config set --local openai.api_base https://...\n```\n\n### 设置commit语言\n默认语言为 en 英语,可自行设置语言\n```\ngptcommit config set output.lang zh-cn\n```\n支持的语言:\n\n| code|language|\n|-|-|\n|`en`|English|\n|`zh-cn`|简体中文|\n|`zh-tw`|繁體中文|\n|`ja`|日本語|\n\n\nGptcommit 还具有许多其他功能和选项,您可以通过输入以下命令来查看它们:\n\n```\ngptcommit --help\n```\n\n此命令将显示 Gptcommit 的帮助信息,其中包含有关如何使用内容、控制生成消息长度和设置默认配置等方面的详细信息。\n\n## 优点\n\n使用 Gptcommit 的一个主要优点是它可以减少手动输入提交消息所需的时间和精力。相较于手动编写提交消息,Gptcommit 可以大大缩短编写提交消息的时间,并且能够保证每个提交消息都符合语法规范。同时,由于 Gptcommit 会生成易于阅读和理解的提交消息,因此它也可以提高代码的可读性和可维护性。\n\n另外,Gptcommit 还基于强大的自然语言生成模型 GPT,因此可以生成高质量的自然语言文本。无论是在编写提交消息还是其他文本内容时,Gptcommit 都可以提供有用的帮助。\n\n## 派生项目\n[vscode-gptcommit](https://github.com/pwwang/vscode-gptcommit) 使用 GPT 模型通过 VS Code 的 gptcommit 实现自动化 git 提交commit插件。",
"attributes": [
{
"value": "gai-shan-Git-gong-zuo-:-shi-yong-Gptcommit-bian-xie-geng-zi-ran-de-ti-jiao-Commit",
"trait_type": "xlog_slug"
}
]
}