Defensive Git Architecture

Safety Guardrails & Key Shortcuts

Protect your team's Git history from human error. GitFlow Helper intercepts direct commits, verifies untracked changes, and provides instant keyboard muscle memory.

Zero Accidental Commits to Protected Branches

Automated interceptors active across every Git action to prevent broken repository states.

🛑

1. Protected Branch Commit Guard

Powered by IntelliJ's CheckinHandler, GitFlow Helper monitors commit actions. If a developer attempts to commit directly to main or develop, the commit is intercepted with a clear warning dialog advising them to switch to a dedicated feature or hotfix branch.

Triggers on: Git Commit Dialog (Ctrl+K / Cmd+K)
⚠️

2. Uncommitted Changes Verification

Before finishing any feature, release, or hotfix, GitFlow Helper scans the working tree for dirty or uncommitted modifications. If found, finishing is halted to prevent silent stash or file loss, prompting the developer to commit or stash first.

Protects against: Accidental uncommitted work loss
⬆️

3. Unpushed Commits Check

Verifies that all local commits have been pushed upstream before deleting branches or finishing work. This guarantees that your team never deletes a local branch that contains unpushed commits forgotten in local history.

Protects against: Dangling untracked commits
🔒

4. Divergence Blocker (isBehind)

If your working branch is behind develop (e.g. ⬇ 3 commits), finishing is strictly prevented. The developer is required to use 1-Click Sync first to resolve any merge conflicts in their own branch before merging upstream.

Protects against: Broken integration trunk on develop
🛡️ protected-branch-commit-warning.png
🛑
Screenshot Placeholder: Protected Branch Commit Interceptor
Place the screenshot showing the warning modal triggered when attempting to commit directly into protected main or develop branches.
Recommended Resolution: 1000 × 550 px • PNG
Defensive CheckinHandler intercepting commits to protected branches Guardrail: Protected Branch

Default Keyboard Shortcuts Cheatsheet

Fly through branch operations with dedicated key bindings designed for speed and muscle memory.

Operation macOS Shortcut Windows / Linux Shortcut Target Base Action Description
Feature Start ⌃ ⌥ 1 Ctrl + Alt + 1 develop Creates a new local feature branch (with optional task binding).
Feature Publish ⌃ ⌥ 2 Ctrl + Alt + 2 remote origin Pushes the current feature branch to remote VCS and sets upstream tracking.
Feature Finish ⌃ ⌥ 3 Ctrl + Alt + 3 develop Merges into develop (or opens GitLab MR / keeps branch) and cleans up.
Release Start ⌃ ⌥ 4 Ctrl + Alt + 4 develop Forks release branch from develop for stabilization and version bump.
Release Publish ⌃ ⌥ 5 Ctrl + Alt + 5 remote origin Publishes release branch to remote repository for team QA validation.
Release Finish ⌃ ⌥ 6 Ctrl + Alt + 6 main + develop Merges into main and develop, tags release version tag, and deletes branch.
Hotfix Start ⌃ ⌥ 7 Ctrl + Alt + 7 main Creates emergency hotfix branch directly from production main.
Hotfix Publish ⌃ ⌥ 8 Ctrl + Alt + 8 remote origin Publishes hotfix branch upstream for peer review and staging smoke test.
Hotfix Finish ⌃ ⌥ 9 Ctrl + Alt + 9 main + develop Merges hotfix into both main and develop, tags patch release, and cleans up.
💡 Customizing Keybindings

All shortcuts can be reconfigured at any time inside your IDE under: Settings (Preferences) → Keymap → Plugins → GitFlow Helper.

🌲 tree-view-checkout-modal.png
Screenshot Placeholder: Branch Checkout & Tree Dialog
Place the screenshot showing branch checkout dialog with Speed Search, remote branch fetching, and branch deletion actions.
Recommended Resolution: 1100 × 650 px • PNG
Fast branch switching with Speed Search filtering and checkout indicators GitFlow Checkout Dialog
💖 Support Open Source

Safe Git Operations for Everyone

Keeping your codebase safe and preventing messy Git histories is our mission. If GitFlow Helper has saved your team from a bad merge or untracked file loss, consider buying a coffee!