git-merge-tree <base-tree> <branch1> <branch2>


Reads three treeish, and output trivial merge results and conflicting stages to the standard output. This is similar to what three-way read-tree -m does, but instead of storing the results in the index, the command outputs the entries to the standard output.

This is meant to be used by higher level scripts to compute merge results outside index, and stuff the results back into the index. For this reason, the output from the command omits entries that match <branch1> tree.


Written by Linus Torvalds <>


Documentation by Junio C Hamano and the git-list <>.


Part of the gitlink:git[7] suite