前言¶
寫代碼繞不開 Git。常見的麻煩不是”不會用”,而是記不全:git restore --staged 和 git reset HEAD 哪個是取消暫存、git reset --soft 和 --hard 差別在哪、分支合併衝突後該跑哪幾條命令。自己整理一份筆記費時間,網上的教程又各自爲政,版本一變命令就過時。
Git Essentials 把版本控制、分支、協作這三塊最常用的命令和工作流集中成一份參考,直接交給 Agent 調用。下面介紹這個 Skill。
這是什麼¶
Git Essentials 是一個基於 SKILL.md 格式的 Skill,定位是 Git 關鍵命令和工作流的速查表,覆蓋版本控制、分支與協作三個主題。
發佈者是 arnarsson,來源 clawhub,上游倉庫 https://clawhub.ai/arnarsson/git-essentials,版本 1.0.0,許可證 MIT-0。SkillHub 上的分類是 dev-programming,標籤 requires_api_key=false,說明不需要額外配置 API Key 就能使用。
它解決的問題是:讓 Agent 在需要執行 Git 操作時有一份完整、可覈對的命令清單,而不是憑記憶生成可能出錯的命令。
核心內容¶
SKILL.md 按操作類型分了若干節,每節是一段可直接複製的 bash 代碼塊。已覈實的章節如下:
- Initial Setup:
git config --global user.name/user.email、git init、git clone(含自定義目錄名)。 - Basic Workflow:
git status、git add(含-A)、git commit(含-am、--amend)。 - Viewing changes:
git diff、--staged、單文件、兩提交之間對比。 - Branching & Merging:
git branch、git checkout/git switch、-b/-c、刪除與重命名分支,git merge(含--no-ff、--abort)與衝突文件列表。 - Remote Operations:
git remote -v、add / set-url / remove,git fetch、git pull、pull --rebase、git push、push -u、--force-with-lease。 - History & Logs:
git log的常用變體(--oneline、--graph --oneline --all、-5、--author、--since/--until、單文件歷史),git log --grep、git log -S、git blame、git bisect start/bad/good。 - Undoing Changes:工作區
git restore、暫存區git restore --staged/git reset HEAD,提交層面git reset --soft HEAD~1、--hard、git revert。 - Stashing:
git stash、save、list、apply、pop、apply stash@{2}、drop、clear。 - Rebasing:
git rebase main、-i HEAD~3、--continue、--skip、--abort。 - Tags:輕量標籤、註解標籤、指定提交打標籤、
push origin v1.0.0、push --tags、刪除標籤。 - Advanced Operations:
git cherry-pick(含-n)、git submodule(add / init / update /clone --recursive)、git clean(-n/-f/-fd/-fdx)。
另外還有 Common Workflows(feature 分支、hotfix、同步 fork)、Useful Aliases(寫入 ~/.gitconfig)、Tips(提交規範、.gitignore、不要對共享分支強推等)和 Common Issues(撤銷誤提交、找回刪除的分支、修改提交信息、解決合併衝突),末尾附 Git 官方文檔和 Pro Git 等參考鏈接。
安裝與啓用¶
SkillHub 頁面沒有給出安裝命令,以下來自上游 ClawHub 頁面顯示的安裝方式:
openclaw skills install @arnarsson/git-essentials
安裝後,Skill 會被掛載到 Agent 的技能目錄中,在對話裏直接引用即可。@arnarsson/git-essentials 是座標,對應 SkillHub 上的 @clawhub_arnarsson/git-essentials。
官方地址:https://api.skillhub.cn/zcwl/git-essentials
上游頁面:https://clawhub.ai/arnarsson/git-essentials
說明:ClawHub 頁面同時提供 CLI 安裝(npx skills)和 Prompt 兩種使用入口,具體取哪一欄取決於你的 Agent 客戶端。資料中沒有 Cursor、Codex CLI、Claude Code 各自的安裝差異說明,這裏不做推測。
典型用法¶
Feature 分支工作流,來自官方資料:
git checkout -b feature/new-feature
git add .
git commit -m "Add new feature"
git push -u origin feature/new-feature
# Create PR, then after merge:
git checkout main
git pull
git branch -d feature/new-feature
熱修復分支,同樣來自官方資料:
git checkout main
git pull
git checkout -b hotfix/critical-bug
git commit -am "Fix critical bug"
git push -u origin hotfix/critical-bug
git checkout main && git pull
同步 fork:
git remote add upstream https://github.com/original/repo.git
git fetch upstream
git checkout main
git merge upstream/main
git push origin main
日常遇到問題時的恢復路徑也在資料裏有:撤銷誤提交用 git reset --soft HEAD~1;找回被刪掉的分支用 git reflog 配合 git checkout -b branch-name <commit-hash>;改錯提交信息用 git commit --amend -m "Correct message"。
如果想精簡命令,可以把官方提供的 alias 段追加到 ~/.gitconfig:
[alias]
st = status
co = checkout
br = branch
ci = commit
unstage = reset HEAD --
last = log -1 HEAD
visual = log --graph --oneline --all
amend = commit --amend --no-edit
適用場景與注意¶
適合需要頻繁做分支、合併、回退操作,又不想每次翻文檔的人和 Agent。命令覆蓋了單機操作到多人協作(remote、submodule、force-with-lease),作爲速查表夠用。
需要注意幾點:
- 它是參考清單,不含交互式教學。命令的正確性取決於你的倉庫狀態,執行前先
git status確認。 - 資料裏明確提示不要對共享分支使用 force push。個人分支可以用
--force-with-lease,不要用--force。 git reset --hard、git clean -fdx、git push --force屬於不可逆或高風險操作,Agent 執行前應先確認。- SKILL.md 中保留了
git checkout和git restore兩種寫法,並註明了新舊差異,可按 Git 版本選擇。 - 版本 1.0.0 的更新時間較早(上游頁面顯示爲 5 個月前),Git 命令本身變化慢,但新特性不會在這裏出現,遇到
git switch、git restore之外的命令需要另行查文檔。
結尾¶
Git Essentials 的價值不在於教新東西,而在於把分散的 Git 命令收進一份結構化清單,Agent 調用時能給出完整命令而不是憑印象拼。如果你需要的是版本控制、分支、協作這條鏈路上的穩定參考,可以從下面的地址安裝。
官方地址:https://api.skillhub.cn/zcwl/git-essentials
上游倉庫:https://clawhub.ai/arnarsson/git-essentials