Display --help information without opening up a man page or a web document (if using Windows?). The --help flag should only print out a summary of help information to the command line.

Keep track of resolved conflicts in other branches when merging the same branches together later on (unless rerere is enabled, which it isn't by default).

Merge any branch into any other branch without later breaking history. In Git you can't ever merge a branch into another branch because this will mess up history, and possibly cause a commit loop in the future.

Have multiple mainlines. In Git you can only ever have one mainline otherwise you risk having commit loops.

Keep track of which branches a commit has been on. In Git, branches are entirely local to developers, and once they are merged and deleted remotely the history is completely lost (unless a non-fast-forward merge, in which case you'll have a commit stating there was a merge), because the commits are replaced into the target branch. The best case scenario is if you still have the branch in your local repository or the branch has not been deleted remotely yet.

Your configuration specifies to merge with the ref 'branch' from the remote, but no such ref was fetched.

~$ git checkout my-branch
Switched to branch 'my-branch'
Your branch is behind 'origin/my-branch' by 3 commits, and can be fast-forwarded.
(use "git pull" to update your local branch)
~$ git pull
Your configuration specifies to merge with the ref 'my-branch'
from the remote, but no such ref was fetched.