public class DefaultNoteMerger extends Object implements NoteMerger
NoteMerger
.
If ours and theirs are both non-null, which means they are either both edits or both adds, then this merger will simply join the content of ours and theirs (in that order) and return that as the merge result.
If one or ours/theirs is non-null and the other one is null then the non-null value is returned as the merge result. This means that an edit/delete conflict is resolved by keeping the edit version.
If both ours and theirs are null then the result of the merge is also null.
Constructor and Description |
---|
DefaultNoteMerger() |
Modifier and Type | Method and Description |
---|---|
Note |
merge(Note base,
Note ours,
Note theirs,
ObjectReader reader,
ObjectInserter inserter)
Merges the conflicting note changes.
|
public Note merge(Note base, Note ours, Note theirs, ObjectReader reader, ObjectInserter inserter) throws IOException
NoteMerger
base, ours and their are all notes on the same object.
merge
in interface NoteMerger
base
- version of the Noteours
- version of the Notetheirs
- version of the Notereader
- the object reader that must be used to read Git objectsinserter
- the object inserter that must be used to insert Git objectsNotesMergeConflictException
- in case there was a merge conflict which this note merger
couldn't resolveIOException
- 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 itCopyright © 2017 Eclipse JGit Project. All rights reserved.