org.eclipse.jgit.notes

## Interface NoteMerger

All Known Implementing Classes:
  DefaultNoteMerger

    public interface NoteMerger

Three-way note merge operation.

This operation takes three versions of a note: base, ours and theirs, performs the three-way merge and returns the merge result.

### Method Summary

All Methods Instance Methods Abstract Methods
`Note` `merge(Note base, Note ours, Note their, ObjectReader reader, ObjectInserter inserter)` Merges the conflicting note changes.

### Method Detail

#### merge

    Note merge(Note base,
               Note ours,
               Note their,
               ObjectReader reader,
               ObjectInserter inserter)
        throws NotesMergeConflictException,
               IOException

Merges the conflicting note changes.

base, ours and their are all notes on the same object.

Parameters:
  `base` - version of the Note
  `ours` - version of the Note
  `their` - version of the Note
  `reader` - the object reader that must be used to read Git objects
  `inserter` - the object inserter that must be used to insert Git objects
Returns:
  the merge result
Throws:
  `NotesMergeConflictException` - in case there was a merge conflict which this note merger couldn't resolve
  `IOException` - in case the reader or the inserter would throw an IOException the implementor will most likely want to propagate it as it can't do much to recover from it