Skip to main content

git-safety

Critical safety guardrails for protected branches: never commit, push, or force-push directly to main, latest, or release branches; no destructive history rewrites without explicit user approval. Use before any git operation that touches protected branches, before force-push, reset --hard, history rewrite, or branch deletion, or whenever the user asks about merging, pushing, or release branches.

Source facts

Repository
redis/RedisInsight
Last source activity
May 21, 2026 at 06:46
Detected SKILL.md language
English
Stars
8,906
Forks
489

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
git-safety
description
Critical safety guardrails for protected branches: never commit, push, or force-push directly to main, latest, or release branches; no destructive history rewrites without explicit user approval. Use before any git operation that touches protected branches, before force-push, reset --hard, history rewrite, or branch deletion, or whenever the user asks about merging, pushing, or release branches.
# Git Safety Rules for AI Agents ## 🚫 CRITICAL: Protected Branch Rules **AI agents must NEVER commit to or push to protected branches under any circumstances.** ### Protected Branches - `main` - Primary production branch - `latest` - Latest stable release - `release/*` - Release branches (e.g., `release/v2.0.0`) This is a non-negotiable rule that applies to all scenarios: ### Prohibited Actions - ❌ **Direct commits** - Never run `git commit` while on a protected branch - ❌ **Direct pushes** - Never run `git push origin <protected-branch>` or `git push` while on a protected branch - ❌ **Force pushes** - Never run `git push --force` or `git push -f` targeting protected branches - ❌ **Merging into protected branches locally** - Never run `git merge <branch>` while on a protected branch - ❌ **Rebasing protected branches** - Never run `git rebase` while on a protected branch - ❌ **Resetting protected branches** - Never run `git reset` while on a protected branch ### Required Workflow 1. **Always create a feature branch** before making any changes 2. **Verify current branch** before any git operation using `git branch --show-current` 3. **Create Pull Requests** for all changes - let the review process handle merging ### Pre-Push Checklist Before executing any push command, AI agents must: 1. ✅ Confirm current branch is NOT a protected branch (`main`, `latest`, `release/*`) 2. ✅ Verify the remote and branch target ### Error Recovery If accidentally on a protected branch with uncommitted changes: 1. Stash changes: `git stash` 2. Create new branch: `git checkout -b <appropriate-branch-name>` 3. Apply changes: `git stash pop` 4. Continue work on the new branch ## Rationale - Protected branches represent production-ready or release code - All changes must go through code review via Pull Requests - Direct pushes bypass CI/CD checks and team review - Mistakes on protected branches can affect the entire team and deployment pipeline
View on GitHub