git merge --no-ff <branchname>
Merge branch without fast-forwarding
This command merges the specified <branchname>
into the current branch, but instead of performing a fast-forward merge, which could potentially lose the branching history, it creates a new commit object, thereby preserving the history of independent lines of development.
The --no-ff
flag prevents the 'fast forward' behavior.
It's worth mentioning that --no-ff
is the long version of the -n
flag. Also, if you need to resolve a merge conflict, you can use the -X
flag followed by the appropriate strategy such as ours
, theirs
or ignore-all-space
.