Get the FREE Ultimate OpenClaw Setup Guide →
npx machina-cli add skill Fujigo-Software/f5-framework-claude/git --openclaw
Files (1)
SKILL.md
7.8 KB

Git Skills

Overview

Git version control knowledge for effective code management and team collaboration. From basic operations to advanced techniques and workflow strategies.

Git Workflow

┌─────────────────────────────────────────────────────────────────┐
│                      Git Data Flow                               │
├─────────────────────────────────────────────────────────────────┤
│                                                                  │
│  Working       Staging        Local          Remote              │
│  Directory     Area           Repository     Repository          │
│  ┌───────┐    ┌───────┐      ┌───────┐      ┌───────┐           │
│  │       │    │       │      │       │      │       │           │
│  │ Files │───▶│Staged │─────▶│Commits│─────▶│Origin │           │
│  │       │add │       │commit│       │ push │       │           │
│  └───────┘    └───────┘      └───────┘      └───────┘           │
│      ▲                           │              │                │
│      │                           │              │                │
│      └───────────────────────────┴──────────────┘                │
│                checkout / pull / fetch                           │
│                                                                  │
└─────────────────────────────────────────────────────────────────┘

Git Object Model

┌─────────────────────────────────────────────────────────────────┐
│                    Git Object Types                              │
├─────────────────────────────────────────────────────────────────┤
│                                                                  │
│  ┌─────────┐     ┌─────────┐     ┌─────────┐     ┌─────────┐   │
│  │  Blob   │     │  Tree   │     │ Commit  │     │   Tag   │   │
│  │ (file)  │◄────│ (dir)   │◄────│         │◄────│         │   │
│  └─────────┘     └─────────┘     └─────────┘     └─────────┘   │
│                       │               │                         │
│                       ▼               ▼                         │
│                  ┌─────────┐    ┌──────────┐                   │
│                  │  Blob   │    │  Parent  │                   │
│                  │  Tree   │    │  Commit  │                   │
│                  └─────────┘    └──────────┘                   │
│                                                                  │
└─────────────────────────────────────────────────────────────────┘

Categories

Fundamentals

Core Git operations and concepts for daily development work.

SkillDescription
git-basicsRepository initialization and basic commands
staging-committingWorking with the staging area and commits
branchingCreating and managing branches
mergingCombining branches and handling merges

Workflows

Team collaboration patterns and branching strategies.

SkillDescription
gitflowGitFlow branching model
github-flowGitHub Flow simplified workflow
trunk-basedTrunk-based development
feature-branchesFeature branch workflow

Collaboration

Working with teams and remote repositories.

SkillDescription
pull-requestsCreating and reviewing PRs
code-reviewCode review best practices
merge-conflictsResolving merge conflicts
remote-reposWorking with remote repositories

Advanced

Power user techniques for complex scenarios.

SkillDescription
rebasingRebase operations and strategies
cherry-pickingSelective commit application
interactive-rebaseInteractive history editing
bisectBinary search for bugs
reflogRecovery with reflog

Best Practices

Standards and conventions for clean repositories.

SkillDescription
commit-messagesConventional commit format
branch-namingBranch naming conventions
gitignoreFile exclusion patterns
git-hooksAutomation with hooks

Tools

Configuration and productivity enhancements.

SkillDescription
git-aliasesCustom command shortcuts
git-configGit configuration options

Quick Reference

Essential Commands

# Repository
git init                    # Initialize new repo
git clone <url>             # Clone remote repo

# Changes
git status                  # Check status
git add <file>              # Stage file
git commit -m "message"     # Commit staged changes

# Branches
git branch                  # List branches
git checkout -b <branch>    # Create and switch
git merge <branch>          # Merge branch

# Remote
git pull                    # Fetch and merge
git push                    # Push to remote
git fetch                   # Fetch without merge

Common Workflows

# Feature development
git checkout -b feature/new-feature
# ... make changes ...
git add .
git commit -m "feat: add new feature"
git push -u origin feature/new-feature
# Create PR, merge, delete branch

# Hotfix
git checkout main
git pull
git checkout -b hotfix/critical-bug
# ... fix bug ...
git commit -m "fix: resolve critical bug"
git push -u origin hotfix/critical-bug
# Create PR with priority review

File Structure

skills/git/
├── _index.md
├── fundamentals/
│   ├── git-basics.md
│   ├── staging-committing.md
│   ├── branching.md
│   └── merging.md
├── workflows/
│   ├── gitflow.md
│   ├── github-flow.md
│   ├── trunk-based.md
│   └── feature-branches.md
├── collaboration/
│   ├── pull-requests.md
│   ├── code-review.md
│   ├── merge-conflicts.md
│   └── remote-repos.md
├── advanced/
│   ├── rebasing.md
│   ├── cherry-picking.md
│   ├── interactive-rebase.md
│   ├── bisect.md
│   └── reflog.md
├── best-practices/
│   ├── commit-messages.md
│   ├── branch-naming.md
│   ├── gitignore.md
│   └── git-hooks.md
└── tools/
    ├── git-aliases.md
    └── git-config.md

Source

git clone https://github.com/Fujigo-Software/f5-framework-claude/blob/main/plugins/f5-core/skills/git/SKILL.mdView on GitHub

Overview

Git is the core system for tracking changes and coordinating work on code, enabling safe collaboration across teams. It covers basics to advanced techniques and workflow strategies to streamline development.

How This Skill Works

Git tracks changes using objects (blob, tree, commit, tag) and moves changes through a flow: Working Directory -> Staging Area -> Local Repository -> Remote Repository. Common commands like git add, git commit, and git push formalize this flow and enable collaboration.

When to Use It

  • When initializing a repository and starting to track files from day one
  • When collaborating with teammates via remotes, pushes, and pull requests
  • When developing features on isolated branches and integrating after review
  • When resolving conflicts during merges or rebases
  • When exploring history, auditing changes, or recovering lost work with reflog

Quick Start

  1. Step 1: git init, git add ., git commit -m "Initial commit"
  2. Step 2: git checkout -b feature/awesome; make changes; git commit
  3. Step 3: git push -u origin feature/awesome; open PR and merge after review

Best Practices

  • Keep commits small and focused; each should capture a single change
  • Write meaningful commit messages that explain the intent
  • Use feature branches and pull requests to isolate work and enable reviews
  • Regularly fetch, pull, and push to stay in sync with remotes
  • Familiarize with Git object types (blob, tree, commit, tag) to reason about history

Example Use Cases

  • Initialize a repo and make the first commit
  • Create a feature branch, commit changes, and push to origin
  • Open a pull request and perform code review before merging
  • Merge a completed feature branch back into the main branch
  • Resolve a merge conflict and complete a rebase if needed

Frequently Asked Questions

Add this skill to your agents

Related Skills

Sponsor this space

Reach thousands of developers