撰寫清晰、一致的 Git 提交資訊是一件費力不討好的事,尤其是在有多名開發人員編寫程式碼併為專案做出貢獻的團隊中。我們都見過類似“fixed stuff”或“update code”這樣的提交,讓每個人都在猜測到底改了什麼。
這就是 Commitizen 的用武之地。Commitizen 就是為解決這個問題而設計的一款工具,它為編寫結構化的提交資訊提供了一種共享格式。可以把它想象成一個友好的指南,確保團隊中的每個人都能說同樣的“提交語言”。
在本文中,我們將探討 Commitizen 如何強化良好的提交習慣。我們還將進一步將 Commitizen 與 AI 助手配對使用,使其從繁瑣的工作變成工作流程的無縫組成部分。
安裝Commitizen
首先,我們需要用 NPM 安裝 cz-git:
npm i -g commitizen cz-git
這將允許我們在任何目錄下全域性訪問 cz CLI 工具。
配置檔案
然後,我們需要新增並設定 Commitizen 配置檔案。我們可以執行
echo '{ "path": "cz-git" }' > ~/.czrc
AI配置
cz-git 同時支援 OpenAI API 和 Ollama。在本例中,我們將使用 Ollama,原因有以下幾點:
- 豐富的模型選項。
- 本地執行。
- 免費。
要建立 Git 提交資訊,一般建議使用具有程式碼理解能力的模型,比如 qwen2.5-coder, starcoder2 。
你可以隨意使用其中任何一種模型。在本文的示例中,我們將使用 qwen2.5-coder
。執行以下命令下載它。
ollama pull qwen2.5-coder
請注意,這將下載的是預設模型,該模型包含 7B 引數和 4.5GB。如果你的電腦資源較少,我建議下載較小的模型,如 1.5B 的模型,它只有約 900MB。您可以使用以下命令下載該模型:
ollama pull qwen2.5-coder:1.5b
下載完成後,我們需要更新 ~/.czrc
中的配置,指定使用 AI 以及模型來生成提交訊息、端點和令牌。由於我們使用的是 Ollama,所以令牌可以留空,因為它不需要令牌。
{ "$schema": "https://raw.githubusercontent.com/Zhengqbbb/cz-git/refs/heads/main/docs/public/schema/cz-git.json", "path": "cz-git", "aiModel": "qwen2.5-coder", "apiEndpoint":"http://127.0.0.1:11434/v1", "openAIToken":" ", "useAI": true }
生成提交資訊
要生成提交資訊,首先要確保我們已經暫存了檔案。否則,請執行 git add
,然後執行以下命令即可:
czg
您需要選擇更改型別。是功能、修復還是其他更新?
一旦你選擇了一種,它就會開始生成資訊。
如果您對生成的資訊滿意,請選擇“Y
”並點選 Enter。它將立即為您建立並推送提交。
小結
人工智慧在過去幾年中取得的進步令人驚歎。它變得越來越容易獲得,也越來越經濟實惠。我們可以用它來讓那些曾經覺得是苦差事的工作變得更簡單、更快捷。
我強烈建議你試一試!
評論留言