git-expert
关于
The git-expert skill provides developers with expert guidance on core Git operations and best practices. It assists with writing conventional commits, resolving merge conflicts, managing branches, and troubleshooting repository issues. Use this skill when you need help crafting commit messages, rebasing, cherry-picking, or implementing branching strategies.
快速安装
Claude Code
推荐/plugin add https://github.com/robconery/github-devgit clone https://github.com/robconery/github-dev.git ~/.claude/skills/git-expert在 Claude Code 中复制并粘贴此命令以安装该技能
技能文档
🔀 Git Expert
Expert guidance for Git operations including commit crafting, conflict resolution, and branch management.
📝 Commit Messages
Format
<type>(<scope>): <subject>
<body>
<footer>
Types
feat: New featurefix: Bug fixdocs: Documentation onlystyle: Formatting, no code changerefactor: Code restructuring without behavior changeperf: Performance improvementtest: Adding/updating testschore: Build process, dependencies, tooling
Rules
- Subject line: max 50 characters, imperative mood ("Add feature" not "Added feature")
- Body: wrap at 72 characters, explain what and why, not how
- Separate subject from body with blank line
- Reference issues in footer:
Fixes #123orCloses #456
Examples
Good:
feat(auth): add OAuth2 login support
Implement Google and GitHub OAuth providers to give users
alternative login methods beyond email/password.
- Add OAuth callback handlers
- Store provider tokens securely
- Link accounts to existing users by email
Closes #234
Bad:
fixed stuff and updated some things
⚔️ Merge Conflicts
Understanding Conflict Markers
<<<<<<< HEAD
Your current branch changes
=======
Incoming changes from merged branch
>>>>>>> feature-branch
Resolution Steps
git status- identify conflicted files- Open each file, locate
<<<<<<<markers - Decide what to keep: yours, theirs, or combination
- Remove all conflict markers
git add <resolved-files>git commit(orgit merge --continue/git rebase --continue)
Resolution Strategies
- Accept ours:
git checkout --ours <file> - Accept theirs:
git checkout --theirs <file> - Manual merge: Edit file to combine changes
- Use mergetool:
git mergetool
Abort if Needed
git merge --abort- cancel mergegit rebase --abort- cancel rebasegit cherry-pick --abort- cancel cherry-pick
🌳 Branching
Naming Conventions
feature/short-description
bugfix/issue-number-description
hotfix/critical-fix-name
release/v1.2.0
Common Workflows
Feature Branch:
git checkout -b feature/new-feature main
# ... work ...
git checkout main
git merge feature/new-feature
git branch -d feature/new-feature
Rebase onto main:
git checkout feature/my-feature
git fetch origin
git rebase origin/main
# resolve conflicts if any
git push --force-with-lease
Interactive Rebase (squash commits):
git rebase -i HEAD~3 # last 3 commits
# Change 'pick' to 'squash' or 's' for commits to combine
Branch Commands
| Command | Purpose |
|---|---|
git branch | List local branches |
git branch -a | List all branches (including remote) |
git branch -d <name> | Delete merged branch |
git branch -D <name> | Force delete branch |
git branch -m <new> | Rename current branch |
git switch <branch> | Switch branches (modern) |
git switch -c <new> | Create and switch |
🔧 Useful Commands
Inspection
git log --oneline --graph --all # visual history
git log -p <file> # file history with diffs
git blame <file> # line-by-line authorship
git show <commit> # commit details
git diff <branch1>..<branch2> # compare branches
Undo Operations
git reset --soft HEAD~1 # undo commit, keep staged
git reset --mixed HEAD~1 # undo commit, unstage (default)
git reset --hard HEAD~1 # undo commit, discard changes ⚠️
git revert <commit> # create inverse commit (safe)
git restore <file> # discard working changes
git restore --staged <file> # unstage file
Stashing
git stash # stash changes
git stash pop # apply and remove stash
git stash list # show stashes
git stash show -p # show stash diff
git stash drop # remove top stash
Cherry-picking
git cherry-pick <commit> # apply single commit
git cherry-pick <c1>..<c2> # apply range (exclusive)
git cherry-pick <c1>^..<c2> # apply range (inclusive)
git cherry-pick --no-commit <c> # apply without committing
🚨 Recovery
Find Lost Commits
git reflog # show all HEAD movements
git checkout <hash> # recover to specific point
git branch recover <hash> # create branch at lost commit
Fix Last Commit
git commit --amend # edit message or add files
git commit --amend --no-edit # add staged files silently
Clean Untracked Files
git clean -n # dry run - show what would be deleted
git clean -f # delete untracked files
git clean -fd # delete untracked files and directories
GitHub 仓库
相关推荐技能
algorithmic-art
元该Skill使用p5.js创建包含种子随机性和交互参数探索的算法艺术,适用于生成艺术、流场或粒子系统等需求。它能自动生成算法哲学文档(.md)和对应的交互式艺术代码(.html/.js),确保作品原创性避免侵权。开发者可通过定义计算美学理念快速获得可交互的艺术实现方案。
subagent-driven-development
开发该Skill用于在当前会话中执行包含独立任务的实施计划,它会为每个任务分派一个全新的子代理并在任务间进行代码审查。这种"全新子代理+任务间审查"的模式既能保障代码质量,又能实现快速迭代。适合需要在当前会话中连续执行独立任务,并希望在每个任务后都有质量把关的开发场景。
executing-plans
设计该Skill用于当开发者提供完整实施计划时,以受控批次方式执行代码实现。它会先审阅计划并提出疑问,然后分批次执行任务(默认每批3个任务),并在批次间暂停等待审查。关键特性包括分批次执行、内置检查点和架构师审查机制,确保复杂系统实现的可控性。
cost-optimization
其他这个Claude Skill帮助开发者优化云成本,通过资源调整、标记策略和预留实例来降低AWS、Azure和GCP的开支。它适用于减少云支出、分析基础设施成本或实施成本治理策略的场景。关键功能包括提供成本可视化、资源规模调整指导和定价模型优化建议。
