| name | git-rebase |
| description | Perform quality-assured git rebase with pre/post validation |
| metadata | {"workflow":"git","audience":"developers"} |
What I do
I perform git rebases while ensuring code quality is maintained throughout the process:
- Pre-rebase validation: Build solution and run all tests using
dotnet nuke test to establish baseline quality
- Capture baseline warnings: Record any existing warnings to distinguish them from rebase-introduced issues
- Execute rebase: Run the rebase command (typically
git pull --rebase github main, but can target other branches)
- Resolve conflicts: Help resolve merge conflicts that arise during rebase
- Post-rebase validation: Re-run
dotnet nuke test to verify quality is maintained
- Fix new issues: Address any NEW warnings or test failures introduced by the rebase
- Preserve existing issues: Leave pre-existing warnings unchanged (they're acceptable)
When to use me
Use this skill when:
- Rebasing feature branches onto main or other branches
- You need confidence that the rebase doesn't break tests or introduce new problems
- Working in .NET projects that use NUKE build system
- You want to distinguish between old warnings (OK) and new issues (must fix)
Command patterns
The most common rebase command is:
git pull --rebase github main
But it can be adapted for other branches:
git pull --rebase origin develop
git rebase main
git rebase -i HEAD~5
Quality gates
Pre-rebase checks:
- Solution must build successfully
- All tests must pass
- Document any existing warnings (these are OK to keep)
Post-rebase requirements:
- Solution must still build successfully
- All tests must still pass
- No NEW warnings beyond the baseline
- Any new warnings or failures must be fixed
Workflow
- Run
dotnet nuke test and capture output
- Note any warnings (count and types)
- Confirm working tree is clean with
git status
- Execute the rebase command
- Resolve conflicts as they appear using Edit tool
- Continue rebase with
GIT_EDITOR=true git rebase --continue (non-interactive)
- Run
dotnet nuke test again
- Compare warnings: old ones are OK, new ones need fixing
- Fix any new issues introduced by the rebase
- Verify final build succeeds with same or fewer warnings than baseline