gitflow
Skill275 starsChanged 34 days agoApache-2.0View on GitHub
Branching, merging, versioning, and release conventions for the Gitflow workflow, covering main/develop branches, feature/release/hotfix branches, semantic versioning, and pull request rules. Use when creating a branch, naming a branch, planning a release or hotfix, writing a commit message, or setting up branch protection for a repository that follows Gitflow.
- Commits and pushes
6 other projects use a version of this.
Adopted by
Most recently taken up by
- mithraeums/skillstheir own version, first seen Nov 1, 2026
- MiguelSavignano/claude-code-systemtheir own version, first seen Nov 1, 2026
- FradSer/skillstheir own version, first seen Oct 13, 2026
- mgiovani/cc-arsenaltheir own version, first seen Sep 25, 2026
- shiranjit/agentic-primertheir own version, first seen Jul 28, 2026
- metalagman/agent-skillstheir own version, first seen Jan 13, 2026
Other versions6 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 6
- metalagman/agent-skills★ 24same name
- mgiovani/cc-arsenal★ 8same name
- MiguelSavignano/claude-code-system★ 6same name
- FradSer/skills★ 4same name
- shiranjit/agentic-primer★ 1same name
- mithraeums/skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository264 other files it gives its agents.
- accessibility-a11ySkill
- alpine-jsSkill
- analytics-data-analysisSkill
- android-developmentSkill
- angular-developmentSkill
- angularSkill
- anime-jsSkill
- anthropic-claude-developmentSkill
- api-developmentSkill
- apollo-graphqlSkill
- aspnet-coreSkill
- astroSkill
- auth0-authenticationSkill
- autogen-developmentSkill
- automl-hyperparameter-optimizationSkill
- aws-developmentSkill
- azureSkill
- backend-developmentSkill
- bash-scriptingSkill
- beautifulsoup-parsingSkill
- bitbucket-workflowSkill
- blazorSkill
- blender-python-addonSkill
- blockchainSkill
- bootstrapSkill
- business-central-developmentSkill
- cheerio-parsingSkill
- chrome-extension-developmentSkill
- ci-cd-best-practicesSkill
- clean-architectureSkill
- clean-codeSkill
- clerk-authenticationSkill
- cloudflare-developmentSkill
- computer-vision-opencvSkill
- convexSkill
- cppSkill
- c-sharpSkill
- cssSkill
- cypressSkill
- data-analysis-jupyterSkill
- data-analystSkill
- data-jupyter-pythonSkill
- deep-learning-pythonSkill
- deep-learning-pytorchSkill
- deep-learningSkill
- deno-typescriptSkill
- design-systemsSkill
- devopsSkill
- django-pythonSkill
- django-rest-api-developmentSkill
- dockerSkill
- dotnetSkill
- drizzle-ormSkill
- drupal-developmentSkill
- elasticsearch-best-practicesSkill
- electron-developmentSkill
- elixirSkill
- embedded-stm32Skill
- esbuild-bundlerSkill
- ethereumSkill
- The first 60 shown.
The file
Show its rules and text
We split this skill into the rules it gives an agent
15 rules. 0 are common, 6 are distinctive, and 9 are very specific to this project.
0
Common
Most of the 6 edited versions we read keep these.
6
Distinctive
This author's own choices. Worth a look.
9
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 27
Never commit directly to main.
- Very specific: line 28
Only accepts merges from hotfix/* branches or release/* branches.
- Very specific: line 29
Must be tagged with a version number after every merge (e.g.
- Very specific: line 35
Never commit directly to develop — all changes land through pull requests.
- Very specific: line 44
Must be up to date with develop before opening a PR.
- Very specific: line 65
Use Conventional Commits format: type(scope): description.
- Very specific: line 97
All changes must go through pull requests — no exceptions for main or develop.
- Distinctive: line 99
All CI checks must pass.
- Very specific: line 100
No direct commits to protected branches (main, develop).
- Distinctive: line 102
Delete the branch after merge (both local and remote copies).
- Very specific: line 117
Create a release branch from develop: git checkout -b release/v1.2.0 develop.
- Distinctive: line 121
After merge to main:
- Distinctive: line 124
Delete the release branch.
- Very specific: line 128
Create a hotfix branch from main: git checkout -b hotfix/v1.2.1 main.
- Distinctive: line 135
Delete the hotfix branch.
“Common” is measured: kept by at least 6 in 10 of the 6 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Gitflow
This skill covers the Gitflow branching model: the two long-lived branches, the three supporting branch types, commit message conventions, semantic versioning, and the release and hotfix processes.
Workflow for a Feature Change
- Sync develop — Run
git checkout develop && git pull origin developso the feature branches from the latest development state. - Create the feature branch — Run
git checkout -b feature/123-user-authentication, using the naming conventionfeature/[issue-id]-descriptive-name. - Commit with conventional messages — Use
type(scope): descriptionfor every commit (see Commit Messages below). - Rebase or merge develop in — Before opening a PR, bring the branch up to date:
git fetch origin && git rebase origin/develop(or merge, per team convention). - Open a pull request into develop — Require at least one approval and passing CI checks; never commit directly to
develop. - Merge and clean up — After merge, delete the feature branch both locally and on the remote:
git branch -d feature/123-user-authentication && git push origin --delete feature/123-user-authentication.
Main Branches
main (or master)
- Contains production-ready code only.
- Never commit directly to
main. - Only accepts merges from
hotfix/*branches orrelease/*branches. - Must be tagged with a version number after every merge (e.g.
git tag -a v1.2.0 -m "Release 1.2.0").
develop
- The main integration branch; contains the latest delivered development changes.
- Source branch for all
feature/*branches. - Never commit directly to
develop— all changes land through pull requests.
Supporting Branches
feature/*
- Branch from:
develop. - Merge back into:
develop. - Naming convention:
feature/[issue-id]-descriptive-name(e.g.feature/123-user-authentication). - Must be up to date with
developbefore opening a PR. - Delete after merge.
release/*
- Branch from:
develop. - Merge back into:
mainanddevelop. - Naming convention:
release/vX.Y.Z(e.g.release/v1.2.0). - Scope is limited to bug fixes, documentation, and release-oriented tasks — no new features.
- Delete after merge.
hotfix/*
- Branch from:
main. - Merge back into:
mainanddevelop. - Naming convention:
hotfix/vX.Y.Z(e.g.hotfix/v1.2.1). - Reserved for urgent production fixes only.
- Delete after merge.
Commit Messages
Use Conventional Commits format: type(scope): description.
| Type | Meaning |
feat | New feature |
fix | Bug fix |
docs | Documentation changes |
style | Formatting, missing semicolons, etc. — no logic change |
refactor | Code restructuring without behavior change |
test | Adding or correcting tests |
chore | Maintenance tasks (build scripts, dependency bumps) |
Example:
feat(auth): add refresh-token rotation
fix(orders): prevent duplicate charge on retry
chore(deps): bump lodash to 4.17.21Semantic Versioning
Given a version MAJOR.MINOR.PATCH:
- MAJOR — incremented for incompatible/breaking API changes.
- MINOR — incremented for backwards-compatible new functionality.
- PATCH — incremented for backwards-compatible bug fixes.
Pull Request Rules
- All changes must go through pull requests — no exceptions for
mainordevelop. - Minimum of one required approval before merge.
- All CI checks must pass.
- No direct commits to protected branches (
main,develop). - The branch must be up to date with its target before merging.
- Delete the branch after merge (both local and remote copies).
Branch Protection Rules
Apply to both main and develop:
- Require pull request reviews before merging.
- Require status checks to pass before merging.
- Require branches to be up to date before merging.
- Include administrators in the restrictions (no bypassing rules with elevated permissions).
- No force pushes.
- No branch deletions.
Release Process
- Create a release branch from
develop:git checkout -b release/v1.2.0 develop. - Bump version numbers in package manifests / changelogs.
- Fix any release-specific issues (docs, last-minute bugs) — do not add new features.
- Open a PR from the release branch into
main. - After merge to
main:- Tag the release:
git tag -a v1.2.0 -m "Release 1.2.0"and push the tag. - Merge
mainback intodevelopso develop has the release commit and tag. - Delete the release branch.
- Tag the release:
Hotfix Process
- Create a hotfix branch from
main:git checkout -b hotfix/v1.2.1 main. - Fix the production issue with the smallest possible change.
- Bump the patch version.
- Open a PR from the hotfix branch into
main. - After merge to
main:- Tag the release:
git tag -a v1.2.1 -m "Hotfix 1.2.1"and push the tag. - Merge
mainback intodevelopso the fix isn't lost in the next release. - Delete the hotfix branch.
- Tag the release:
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

