Home › Developer Tools › Git Branch Name Generator

Git Branch Name Generator

Paste a ticket ID and its title and get a tidy, valid branch name such as feature/PROJ-1423-add-oauth-login, plus the git command to create it. Pick your team's prefix, separators and length limit once and they are remembered.

Last updated:

Tip: paste "PROJ-12: Fix crash" and leave the ID empty, the ID is detected automatically

chars

0 = no limit. 50–60 keeps names readable in tools

Enter your values to see the result.
Advertisement
Advertisement

How to use the Git Branch Name Generator

  1. Enter the ticket ID (PROJ-123, #42) and the ticket title.
  2. Choose the branch type, such as feature or bugfix, or a custom prefix.
  3. Set your team's style: separators, ticket case, ticket position and maximum length.
  4. Click Generate (the name also updates as you type).
  5. Copy the branch name or the git command and run it in your terminal.

Common branch type prefixes

PrefixUse it forExample
feature/New functionalityfeature/PROJ-88-export-to-csv
bugfix/ or fix/Non-urgent bug fixes on the development branchfix/482-empty-upload-crash
hotfix/Urgent fixes branched from productionhotfix/OPS-77-webhook-retry-500
release/Stabilising a version before it shipsrelease/v2.4.0
chore/Tooling, dependency bumps, housekeepingchore/update-eslint-config
docs/Documentation onlydocs/api-auth-examples
refactor/Code changes without new behaviourrefactor/split-user-service
test/Adding or fixing teststest/payment-edge-cases

The type names match Conventional Commits types (feat, fix, chore, docs…), so many teams use the same word in the branch name and the commit message.

Rules this generator applies

  • Lowercase words, hyphen-separated: avoids case clashes on Windows and macOS, where Feature/Login and feature/login can collide.
  • ASCII only: accents are stripped (café → cafe) and symbols such as &, !, emoji and quotes are dropped.
  • Ticket ID kept as typed or in uppercase, because tracker integrations usually match keys like PROJ-123.
  • Whole-word trimming: when the name is too long, words are removed from the end of the description, never from the prefix or ticket.
  • Git-safe: no spaces, no "..", no ~ ^ : ? * [ \, no leading dots and no trailing slash, dot or ".lock".

Frequently asked questions

What is a good git branch naming convention?

A common pattern is type/TICKET-short-description, for example feature/PROJ-1423-add-oauth-login. The type groups branches, the ticket ID links the work to your tracker, and a few lowercase words separated by hyphens say what the branch is about.

Which characters are not allowed in a git branch name?

Git rejects spaces, control characters, ~ ^ : ? * [ and backslash, two dots in a row (..), the sequence @{, a component starting with a dot, and names ending in / or .lock. This generator replaces or removes all of those.

Should the Jira ticket key be in the branch name?

Including it is recommended. Jira, GitHub, GitLab and Bitbucket integrations can link a branch to an issue when the key (such as PROJ-123) appears in the branch name, and it makes old branches easy to trace.

How long should a branch name be?

Git itself has no practical limit, but names over about 50 to 60 characters are hard to read in terminals, CI logs and pull request lists. Keep three to six meaningful words after the ticket ID.

Slash or hyphen after the type?

A slash (feature/login) is the most common choice because many git tools show slash-separated names as folders. Note that you cannot have a branch called feature and another called feature/login at the same time, because git stores them as a file and a folder.

What is the difference between git switch -c and git checkout -b?

Both create a new branch and switch to it. git switch -c was added in Git 2.23 as a clearer command for branch switching; git checkout -b works in every version.

Are all the tools on FreeToolCabin tested for quality and accuracy?

Yes! Every tool on our site undergoes automated Q/A testing in real browser environments to ensure high precision, correct output, and zero errors. If you happen to spot a bug or have a suggestion, please contact us at [email protected] and our team will review it right away.

Related tools

Commit Message GeneratorBuild Conventional Commit messages with type, scope, body, breaking change and issue refs.Git Cheat SheetSearchable Git command reference by task, with copy buttons and an undo/rename/fix wizard.Gitignore GeneratorBuild a .gitignore from 50+ templates for languages, frameworks, IDEs and OS, merged and deduped.Semantic Version CalculatorBump, compare, sort and test SemVer versions against npm ^, ~ and x ranges.QR Code GeneratorMake QR codes for links, Wi-Fi, email and more.Barcode GeneratorCreate Code 128, EAN-13, UPC-A, EAN-8, Code 39 and ITF-14 barcodes as PNG or SVG.UUID GeneratorGenerate UUID v4 and v7 / GUIDs in bulk and copy or download them.Schema Markup Generator (JSON-LD)Create JSON-LD structured data for FAQ, Product, Article and more.Htaccess & Nginx Redirect GeneratorBuild 301 redirects for .htaccess, Nginx and Netlify or Cloudflare _redirects.Fake Data GeneratorGenerate mock data as JSON, CSV or SQL.Random String GeneratorGenerate secure random strings and tokens in bulk with any length and character set.API Key GeneratorCreate secure API keys and secrets with prefixes, checksums and SHA-256 hashes for storage.MIME Type LookupFind the MIME type for any file extension, or the extensions for a MIME type, in 400+ entries.Cron Expression GeneratorBuild crontab schedules visually, read them in plain English and see the next run times.URL Slug GeneratorTurn titles into clean, SEO-friendly URL slugs: accents, stop words, separators and bulk lines.JSON Schema GeneratorTurn sample JSON into a draft 2020-12 JSON Schema with types, required fields and formats.License GeneratorCreate a LICENSE file for MIT, Apache, GPL, BSD, ISC, MPL or Unlicense with your name and year.ULID GeneratorGenerate sortable ULIDs and UUID v7 in bulk, monotonic option, and decode their timestamps.Htpasswd GeneratorCreate .htpasswd entries with bcrypt, APR1-MD5 or SHA-1 for Apache and Nginx basic auth.Placeholder Image GeneratorCreate placeholder images in any size, color and text as PNG, JPG, WebP, SVG or data URI.Ads.txt GeneratorCreate or validate ads.txt and app-ads.txt files: seller lines, cert IDs and variables.Docker Run to Compose ConverterConvert docker run commands to docker-compose.yml, or a compose file back to docker run.Dockerfile GeneratorGenerate a production Dockerfile and .dockerignore for Node, Python, Go or a static nginx site.HTML Boilerplate GeneratorTick the options you need and get a clean HTML5 starter template with meta, OG tags and CSS reset.JSON to Zod SchemaInfer a Zod (or Yup) schema from sample JSON with optional, nullable and z.infer types.Linux Commands Cheat SheetSearchable Linux and bash command reference with flags explained, examples and copy buttons.LLMs.txt GeneratorBuild an llms.txt file for AI crawlers: summary and link sections, import from your sitemap.Nano ID GeneratorGenerate secure Nano IDs with custom alphabet, length and count, plus a collision calculator.Nginx Config GeneratorBuild an nginx server block: static site, SPA, reverse proxy or PHP, with SSL, gzip and redirects.OpenAPI / Swagger ViewerView OpenAPI 2/3 JSON or YAML as interactive API docs with validation and an endpoint list.package.json GeneratorFill a form and get a valid, npm-ready package.json with scripts, dependencies and checks.PKCE Code Challenge GeneratorGenerate an OAuth 2.0 PKCE code_verifier and S256 code_challenge, build auth URLs, verify pairs.README GeneratorFill in a form and get a polished README.md with badges, install, usage and license, live preview.Regex GeneratorBuild regular expressions visually from blocks or presets (email, date, phone) and test them live.Database Schema DesignerDesign tables and relationships visually, then export SQL for MySQL, PostgreSQL or SQLite.Docker Compose GeneratorBuild a docker-compose.yml with a form: services, ports, volumes, env, healthchecks and presets.Dummy File GeneratorCreate test files of an exact size in KB, MB or GB with zeros, random bytes or text.FFmpeg Command GeneratorPick a task and options, get the exact ffmpeg command with every flag explained.HowTo Schema GeneratorCreate HowTo JSON-LD with steps, tools, supplies, total time and cost, then copy it.Htaccess GeneratorBuild an Apache .htaccess file: HTTPS, www, gzip, caching, error pages, IP blocks, hotlinks.HTML Email Template BuilderDrag and drop blocks to build a responsive, table-based HTML email with inline styles.Organization Schema GeneratorCreate Organization JSON-LD with logo, URL, contact points, address and social profiles.PIN GeneratorGenerate random 4, 6 or 8-digit PINs that avoid sequences, repeats, dates and common PINs.Product Schema GeneratorBuild Product JSON-LD with price, availability, brand, GTIN, ratings and reviews.Question Keyword GeneratorFind the questions people ask about a topic, grouped by who, what, why, how, can and more.Recipe Schema GeneratorCreate Recipe JSON-LD with ingredients, steps, prep and cook times, nutrition and ratings.Security Headers GeneratorPick HSTS, CSP, frame, referrer and permissions options and get Apache, Nginx, Netlify or Cloudflare config.SKU GeneratorBuild consistent SKUs from brand, category, size and color, then export every variant as CSV.Typography Scale GeneratorBuild a modular type scale from a base size and ratio, then copy CSS variables or a Tailwind config.WordPress Salt GeneratorGenerate fresh WordPress security keys and salts for wp-config.php, .env or Docker in one click.ANSI Color Code GeneratorStyle terminal text with 16, 256 or RGB colors and get escape codes for bash, Python, JS and C.Apache Virtual Host GeneratorCreate an Apache VirtualHost config with SSL, redirects, reverse proxy or PHP-FPM in seconds.Bash Prompt GeneratorDrag and drop a custom PS1 prompt for bash or zsh with colors, git branch and a live preview.Changelog GeneratorTurn Conventional Commit messages into a grouped Keep a Changelog Markdown file per version.cURL Command BuilderBuild curl commands from a form: method, headers, query, JSON or form body, auth and flags.Docker Compose to KubernetesConvert docker-compose.yml into Kubernetes Deployment, Service, ConfigMap and PVC manifests.Docker Compose ValidatorCheck a docker-compose.yml for YAML errors, schema mistakes, broken references and deprecated keys.Dockerfile LinterLint a Dockerfile for best practices: pinned tags, apt cleanup, non-root USER and layer count.Dockerignore GeneratorBuild a .dockerignore from Node, Python, Go and Java templates, plus your own entries.ESLint Config GeneratorGenerate a flat eslint.config.js for JavaScript, TypeScript, React or Node with rule presets.GitLab CI Config GeneratorGenerate a .gitlab-ci.yml with stages, jobs, images, cache, artifacts and rules from templates.Jinja2 Template TesterRender Jinja2 templates with YAML or JSON variables using real Jinja2, with clear error lines.JSON Schema Mock Data GeneratorGenerate realistic sample JSON from a JSON Schema: formats, patterns, $ref, seeds and counts.Kubernetes Secret GeneratorCreate Kubernetes Secret YAML from key/value pairs or .env with auto base64, or decode one.Kubernetes YAML ValidatorValidate Kubernetes manifests against the API schema of a chosen version, with error paths.Prettier Config GeneratorToggle Prettier options, preview formatted code live and copy your .prettierrc file.Quartz Cron GeneratorBuild and explain Quartz and Spring cron expressions with seconds, ?, L, W and #, plus next fire times.README Badge GeneratorCreate Shields.io-style README badges for license, version, build and custom labels.
See all 85 Code Generators & Builders →