Interface NoteMerger

  • All Known Implementing Classes:

    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 Detail

      • merge

        Note merge​(Note base,
                   Note ours,
                   Note their,
                   ObjectReader reader,
                   ObjectInserter inserter)
            throws NotesMergeConflictException,
        Merges the conflicting note changes.

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

        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
        the merge result
        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 the implementor will most likely want to propagate it as it can't do much to recover from it