Skip to content

Home

Merge a branch in Git

Branches are Git's way to organize separate lines of development, allowing a team to work multiple features in parallel. But at some point, you'll want to merge a branch into another branch, usually master or main. Depending on your team's workflow, merging a branch might create a merge commit or not.

Merging a branch

In order to merge a branch, you want to switch to the target branch first, using git checkout. Then, you can use git merge to merge the source branch into the target branch.

# Syntax:
#  git checkout <target-branch>
#  git merge <source-branch>

git checkout master
git merge patch-1 # Merges the `patch-1` branch into `master`

By default, Git will use fast-forward merge to merge the branch. This means that it will create a linear history, by placing the commits from the source branch at the tip of the target branch.

Creating a merge commit

If, instead, you want to create a merge commit, you can use the --no-ff flag when merging. This will create a merge commit at the tip of the target branch, optionally referencing the source branch in the commit message. The rest of the process remains the same.

# Syntax:
#  git checkout <target-branch>
#  git merge --no-ff -m <message> <source-branch>

git checkout master
git merge --no-ff -m "Merge patch-1" patch-1
# Merges the `patch-1` branch into `master` and creates a commit
# with the message "Merge patch-1"

More like this

Start typing a keyphrase to see matching snippets.