← Back to list

git-workflows
by eyadsibai
⭐ 0🍴 0📅 Jan 15, 2026
SKILL.md
name: Git Workflows description: This skill should be used when the user asks to "create a commit", "write commit message", "create a pull request", "generate changelog", "manage branches", "git workflow", "merge strategy", "PR description", or mentions git operations and version control workflows. version: 1.0.0
Git Workflows
Comprehensive git workflow skill for commits, pull requests, branching, and changelog generation.
Commit Message Format
Conventional Commits
| Part | Purpose | Example |
|---|---|---|
| Type | Category of change | feat, fix, docs |
| Scope | Affected component | (auth), (api) |
| Subject | Brief description | add OAuth2 login |
| Body | Details (optional) | Why + what changed |
| Footer | References | Closes #123 |
Commit Types
| Type | When to Use |
|---|---|
| feat | New feature |
| fix | Bug fix |
| docs | Documentation only |
| style | Formatting (no code change) |
| refactor | Code restructuring |
| test | Adding/updating tests |
| chore | Maintenance, deps |
| perf | Performance improvement |
Commit Analysis Workflow
- Run
git diff --stagedto see changes - Identify change type (feat, fix, etc.)
- Determine scope (affected component)
- Write concise subject (< 50 chars)
- Add body if context needed
Pull Request Structure
PR Template Elements
| Section | Content |
|---|---|
| Summary | What this PR does (1-2 sentences) |
| Changes | Bullet list of specific changes |
| Testing | How changes were tested |
| Screenshots | If UI changes |
| Checklist | Tests pass, docs updated |
PR Analysis Workflow
- List commits:
git log main..HEAD --oneline - Identify themes across commits
- Note any breaking changes
- Check test coverage
- Review documentation needs
Branch Strategies
Git Flow
| Branch | Purpose |
|---|---|
| main | Production code |
| develop | Integration branch |
| feature/ | New features |
| release/ | Release preparation |
| hotfix/ | Production fixes |
GitHub Flow
| Branch | Purpose |
|---|---|
| main | Always deployable |
| feature branches | Short-lived work |
Trunk-Based
| Branch | Purpose |
|---|---|
| main | All development |
| Short branches | < 1 day |
| Feature flags | Incomplete work |
Branch Naming
| Pattern | Example |
|---|---|
| Feature | feature/ABC-123-add-user-auth |
| Bugfix | bugfix/ABC-456-fix-login |
| Hotfix | hotfix/critical-security-patch |
| Release | release/v1.2.0 |
Changelog Format
Keep a Changelog Structure
| Section | Content |
|---|---|
| Added | New features |
| Changed | Changes in existing functionality |
| Deprecated | Soon-to-be removed features |
| Removed | Removed features |
| Fixed | Bug fixes |
| Security | Security fixes |
Changelog Generation Workflow
- Get commits since last release tag
- Parse commit messages for type/scope
- Group by category (Added, Fixed, etc.)
- Format with links to issues/PRs
Best Practices
Commits
| Practice | Why |
|---|---|
| Atomic commits | One logical change per commit |
| Clear messages | Explain why, not just what |
| Reference issues | Link to related tickets |
| Sign commits | GPG verification |
Pull Requests
| Practice | Why |
|---|---|
| Small PRs | < 400 lines ideal for review |
| Clear title | Summarize the change |
| Self-review first | Check diff before requesting |
| Respond promptly | Address feedback quickly |
Branches
| Practice | Why |
|---|---|
| Short-lived | Merge within days |
| Up to date | Rebase regularly |
| Clean history | Squash before merge |
| Delete after merge | Keep repo clean |
Merge Strategies
| Strategy | When to Use | Result |
|---|---|---|
| Merge commit | Preserve history | Merge commit node |
| Squash | Clean up messy history | Single commit |
| Rebase | Linear history | No merge commit |
| Fast-forward | Simple, linear | No merge commit |
Key concept: Squash for feature branches with messy commits. Rebase for clean linear history. Merge commit when branch history matters.
Common Git Commands
Pre-Commit
| Command | Purpose |
|---|---|
git status | See staged/unstaged changes |
git diff --staged | Review what will be committed |
git add -p | Interactive staging |
Commit
| Command | Purpose |
|---|---|
git commit -m "msg" | Commit with message |
git commit --amend | Fix last commit (before push) |
Branch Management
| Command | Purpose |
|---|---|
git branch -d name | Delete merged branch |
git fetch --prune | Remove stale remotes |
git rebase main | Update branch with main |
PR Workflow
| Command | Purpose |
|---|---|
git push -u origin branch | Push and set upstream |
gh pr create | Create PR via CLI |
gh pr merge | Merge PR via CLI |
Resources
- Conventional Commits: https://www.conventionalcommits.org/
- Keep a Changelog: https://keepachangelog.com/
- Git Book: https://git-scm.com/book
Score
Total Score
50/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon