git-advanced-workflows

Automate Git history management with rebasing, cherry-picking, bisecting, worktrees, and reflog recovery.

Updated Jan 20, 2026
One-click install
npx skills add https://github.com/ollieb89/ugro --skill git-advanced-workflows-ollieb89
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: git-advanced-workflows
Source: https://github.com/ollieb89/ugro/tree/main/.windsurf/skills/git-advanced-workflows
Command: npx skills add https://github.com/ollieb89/ugro --skill git-advanced-workflows-ollieb89

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) and assets (resource) components.

What problem does it solve?

This Skill helps software teams manage complex Git histories and multiple branches with confidence, reducing confusion and manual mistakes during collaboration and release cycles.

Core Features & Use Cases

  • Interactive Rebase: clean up commit history before merging by reordering, editing, squashing or dropping commits.
  • Cherry-Picking: selectively port specific commits across branches to fix or backport features.
  • Git Bisect: quickly identify which commit introduced a bug through binary search with guided testing.
  • Worktrees: work on multiple branches simultaneously without leaving a dirty working tree.
  • Reflog: recover lost commits and restore branches after mistakes.

Quick Start

Inspect your repository and begin with core workflows:

  • Inspect branches: git branch -vv
  • Clean history: git rebase -i main
  • Port commits: git cherry-pick <commit-hash>
  • Find bugs: git bisect start; git bisect bad; git bisect good <good-commit>
  • Work on multiple tasks: git worktree add ../feature-branch feature/branch
  • Recover history: git reflog

Frequently Asked Questions about git-advanced-workflows

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I clean up my Git commit history before merging?

Interactive rebase lets you reorder, edit, squash, or drop commits to create a clean history. Run git rebase -i main to start editing commits interactively before merging to your target branch.

What's the best way to find which commit introduced a bug?

Git bisect uses binary search to identify the exact commit that broke your code. Start with git bisect start, mark the current state as bad, specify a known good commit, and bisect guides you through testing until the culprit is found.

Can I work on multiple Git branches at the same time without stashing?

Git worktrees let you check out multiple branches simultaneously in separate directories without a dirty working tree. Use git worktree add ../feature-branch feature/branch to work on another branch while keeping your current work intact.

How do I selectively apply commits from one branch to another?

Cherry-picking lets you port specific commits across branches to backport fixes or features. Run git cherry-pick <commit-hash> to apply an individual commit to your current branch without merging the entire source branch.

Can I recover commits I accidentally deleted or lost?

Git reflog tracks all branch movements and commits, even deleted ones. Use git reflog to view your history and recover lost commits or restore branches after mistakes by checking out the commit hash.

When should I use interactive rebase versus cherry-pick?

Interactive rebase cleans up your current branch's history before sharing it; cherry-pick selectively copies specific commits to another branch. Use rebase for local history refinement and cherry-pick to port individual changes across branches.