Git Workflow with Conventions

VerifiedSafe

Enforces branch naming conventions (feature/fix/hotfix), commit message formatting (Conventional Commits style), secret file detection to prevent accidental commits, and safety guards that block pushes to protected branches. Helps maintain consistent project history and security when using Git on collaborative repositories.

Sby Skills Guide Bot
DevelopmentIntermediate
6/2/2026
Claude Code
#git#workflow#branching#commit-conventions#secret-protection

Recommended for

Automated summary

This skill enforces strict conventions for branches, commit messages, and secret protection within a Git repository.

Strengths

  • Automates adherence to branch naming and commit formatting conventions
  • Prevents secret leaks by blocking sensitive files from being committed
  • Blocks pushes to protected branches and enforces pull requests
  • Manages .gitignore creation and maintenance

Limitations

  • Requires following predefined conventions, which may be restrictive
  • Does not handle advanced conflict resolution or complex Git workflows
  • Secret detection relies on a static pattern list, not content analysis
When to use it

Use this skill to standardize Git operations in a team project and avoid common mistakes like secret leaks.

When not to use it

Avoid this skill for projects requiring flexible conventions or highly customized Git workflows.

Security analysis

Safe
Quality score90/100

The skill only uses git commands (via bash) to enforce branching, commit formatting, and secret protection. No destructive or exfiltrating operations are instructed. It includes safety guards to block pushes to protected branches and prevent committing secret files.

No concerns found

How this analysis is made

Examples

Create a feature branch
Create a new branch for the user login feature.
Commit with proper format
Commit my staged changes with a message describing the fix for the payment bug.
Push while protecting secrets
Push my commits, but first check for any accidentally staged secret files.

name: git description: Git workflow with enforced branch naming, commit formatting, secret protection, and safety guards. Use when: creating branches, committing changes, pushing code, merging, resolving conflicts, creating PRs. Triggers: git operations, create branch, commit, push, merge, branch naming, commit message format. allowed-tools: Bash(git:*)

Git Workflow

Enforces repository conventions for branches, commits, and pushes.

Conventions: See @.claude/skills/git/references/conventions.md

Process

VALIDATE → EXECUTE → VERIFY

Decision Rules

Branch Type

  • New functionality → feature/<scope>/<desc>
  • Bug fix → fix/<scope>/<desc>
  • Refactor → refactor/<scope>/<desc>
  • Docs → docs/<scope>/<desc>
  • Maintenance → chore/<scope>/<desc>
  • Urgent fix → hotfix/<desc>
  • Release → release/<version>

Commit Type

  • Feature → feature(<scope>): ...
  • Fix → fix(<scope>): ...
  • Refactor → refactor(<scope>): ...
  • Test → test(<scope>): ...
  • Docs → docs(<scope>): ...

Source Branch

  • feature/fix/refactor/docs/chore → from main
  • hotfix → from release/* or main
  • release → from main

Secret Protection

Protected Patterns

Files (block commit):

*.env
*.env.*
*.pem
*.key
*.p12
*.pfx
*.crt
credentials.*
secrets.*
*_secret.*
*.keystore

Directories (block commit):

.secrets/
.credentials/

Allowed exceptions:

*.env.example
*.example

Pre-Commit Check

Before any commit, scan staged files:

git diff --cached --name-only

If protected pattern detected:

⚠ Secret Protection

Detected secret file staged for commit:
  [filename]

Action: Adding to .gitignore and unstaging file.

Then:

  1. Add pattern to .gitignore
  2. Unstage file: git reset HEAD [file]
  3. Continue commit without secret

.gitignore Management

If .gitignore doesn't exist:

ℹ Creating .gitignore

Project has no .gitignore. Creating with security patterns.

Create with standard security block:

# Secrets - NEVER COMMIT
.env
.env.*
!.env.example
*.pem
*.key
*.p12
*.secret
.secrets/
.credentials/

If .gitignore exists but missing pattern:

Append missing pattern to existing .gitignore.

Safety Guards

Block Operations

| Trigger | Action | |---------|--------| | Push to main/master/release/*/prod/* | Block → suggest PR | | Force-push on shared branch | Block | | Amend after push | Block → suggest new commit | | Secret file in staged changes | Block → update .gitignore | | Binary >100MB | Block |

Warn Only

  • Binary >10MB

Validation

Before commit/push:

  1. Branch name matches convention?
  2. Commit message format correct?
  3. No secrets in staged files?
  4. Not pushing to protected branch?

Interactive Mode

When ambiguous, ask:

"Possible actions:
1. Create branch
2. Commit changes  
3. Push commits
Which matches your intent?"

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/git-workflow-with-conventions-mm5t89ni/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/git-workflow-with-conventions-mm5t89ni' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/git-workflow-with-conventions-mm5t89ni/download' --output '.skill-downloads/git-workflow-with-conventions-mm5t89ni/SKILL.md.part' && mv '.skill-downloads/git-workflow-with-conventions-mm5t89ni/SKILL.md.part' '.skill-downloads/git-workflow-with-conventions-mm5t89ni/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

This file does not provide a usable name/description header for this native procedure. It remains available to download and inspect; use the manual method below.

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/git-workflow-with-conventions-mm5t89ni/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills