How to Quickly Rename a Git Branch

Renaming a Git branch allows you to change the name to better indicate what the branch contains or to adhere to team naming conventions. Here are the key things to know about renaming branches in Git:

Reasons to Rename a Git Branch

Here are some common reasons you may need to rename a Git branch:

  • The current name no longer reflects what the branch contains after making significant changes
  • You made a typo when originally creating the branch name
  • Your team decides to standardize on a different branch naming convention

Renaming Local Branches

Renaming a local Git branch is straightforward using the git branch -m command.

Here is the basic syntax:

git branch -m <old-name> <new-name>

For example:

git branch -m my-feature my-awesome-feature

If you are currently checked out to the branch you want to rename, you can omit the old name:

git branch -m awesome-feature

After running the rename command, verify the change with git branch.

Renaming Remote Branches

To rename a remote branch, you need to:

  1. Rename the local branch
  2. Delete the old remote branch
  3. Push the renamed local branch

Here are the commands:

git branch -m old-name new-name
git push origin :old-name 
git push --set-upstream origin new-name

This will set the upstream for your renamed local branch to track the new remote branch.

Best Practices for Branch Names

When naming Git branches, keep these best practices in mind:

  • Use dashes or underscores to separate words
  • Prefix with a category like feature/, bugfix/, hotfix/
  • Include ticket number if working on a tracked issue
  • Be concise but descriptive
  • Avoid spaces

Good examples:

feature/login-update
bugfix_455-submit-error  

Benefits of Renaming Branches

  • Improves clarity on what a branch contains
  • Resolves typos
  • Adheres to team conventions
  • Facilitates code reviews by accurately indicating changes

By taking a few minutes to rename branches using the right Git commands, you can boost team productivity and make your repository easier to navigate.

When to Avoid Renaming Branches

Here are two cases where you’ll want to avoid renaming a branch:

  • The branch has been merged into other branches already
  • The branch exists in many developers’ local repositories

In these cases, it’s better to delete the obsolete branch and create a new one with the desired name. This prevents lots of outdated references to the old branch name persisting.

Visualizing Branch Relationships

When working with many branches, it can be helpful to visualize how they relate to each other.

GitKraken is a cross-platform Git GUI client that makes it easy to visualize the branch structure:

GitKraken Branch View

The branch view shows remote branches on the left and local branches on the right. You can clearly see the upstream tracking relationships and commits in a simple graph view.

Wrapping Up

Here are some key takeaways:

  • Use git branch -m to rename local branches
  • Delete and recreate remote branches when renaming
  • Opt for descriptive and consistent branch names
  • Visualize relationships to avoid confusion
  • Avoid renaming widely-used branches

Following these best practices for renaming Git branches will help you maintain a clean project history.