git-advanced

Automate advanced Git operations for safe rebases and tag management.

12|3|Updated Sep 24, 2025
One-click install
npx skills add https://github.com/mikha08-rgb/VoiceLite --skill git-advanced-mikha08-rgb
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: git-advanced
Source: https://github.com/mikha08-rgb/VoiceLite/tree/main/.claude/skills/git-advanced
Command: npx skills add https://github.com/mikha08-rgb/VoiceLite --skill git-advanced-mikha08-rgb

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill empowers developers with advanced Git operations, simplifying complex tasks like interactive rebasing, safe tag management, cherry-picking fixes, and resolving merge conflicts, ensuring a clean and accurate project history.

Core Features & Use Cases

  • Safe Rebase Workflow: Guides through interactive rebasing to clean up commit history before merging feature branches.
  • Tag Management: Provides commands to delete, move, and create annotated Git tags, crucial for release management.
  • Cherry-Pick: Explains how to selectively apply commits from one branch to another, ideal for backporting hotfixes.
  • Use Case: If a critical bug fix is made on the master branch and needs to be applied to an older v1.0.95-patch branch, use this skill to guide through finding the commit hash and safely cherry-picking it to the target branch without merging the entire master history.

Quick Start

Clean up the last 3 commits on your current feature branch using an interactive rebase, squashing minor fixes into a single logical commit.

Frequently Asked Questions about git-advanced

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

FAQPage Schema
How do I resolve merge conflicts when rebasing feature branches?

Merge conflicts during rebase occur when Git cannot automatically combine changes. Interactive rebase pauses at conflicting commits, letting you manually resolve differences in affected files, then continue the rebase. This keeps your branch history clean before merging.

What's the best way to cherry-pick a bug fix to an older release branch?

Cherry-pick selectively applies a specific commit from one branch to another without merging the entire history. Find the commit hash on the source branch, switch to your target branch (e.g., v1.0.95-patch), then cherry-pick that commit to backport the fix safely.

How do I clean up commit history with interactive rebase before merging?

Interactive rebase lets you squash, reorder, and edit commits on your feature branch. Run git rebase -i to open an editor, mark commits to squash into logical units, and resolve any conflicts. This produces a clean history before merging to main.

Why should I use annotated tags instead of lightweight tags for releases?

Annotated tags store metadata—author, date, and message—making them ideal for release workflows and reproducible version histories. Lightweight tags are just branch references. For production releases, annotated tags provide traceability and are safer for version management.

Can I undo commits or abort a rebase if something goes wrong?

Yes. If a rebase fails, use git rebase --abort to return to your original branch state. To undo commits already pushed, create a new commit that reverses changes, or use git reset on local commits before pushing. Both preserve safety by avoiding destructive history rewrites on shared branches.

How do I move or delete Git tags when managing multiple release versions?

Delete a tag with git tag -d [tag-name] locally or git push origin --delete [tag-name] remotely. Move a tag by deleting it and recreating it at a new commit, or force-move with git tag -f. Manage annotated tags for releases to keep version history accurate across branches.