Flag | Usage |
---|---|
-a --all | Output all merge bases for the commits, instead of just one |
sourceor
destinationbranches when merging, but this reminds me of the new "arrow" that will be added to the commit tree :
A---B---C feature / D---E---F---G master
A---B---C feature / ↘ D---E---F---G---H master
the 1st oneonto
the 2nd onesince they diverged. This means the whole set of commits "lands" on
the 2nd one. This is important when it comes to deleting merged branches.
destinationbranch remained untouched since the creation of the branch. In such a case, a fast-forward merge will be performed automatically (source).
Flag | Usage |
---|---|
--allow-unrelated-histories | By default, git merge refuses to merge histories that do not share a common ancestor. This option can be used to override this safety when merging histories of two projects that started their lives independently. |
Specifies how a merge is handled when the merged-in history is already a descendant of the current history :
|
|
--squash |
After :
git merge --squash feature git branch -d featureGit complains : error: The branch feature is not fully merged. If you are sure you want to delete it, run git branch -D feature.This is a normal Git behavior (full details). All you have to do is delete the branch as shown in the error message . |