public abstract class ThreeWayMerger extends Merger
db, reader, sourceCommits, sourceObjects, sourceTrees, walk| Modifier | Constructor and Description |
|---|---|
protected |
ThreeWayMerger(Repository local)
Create a new merge instance for a repository.
|
protected |
ThreeWayMerger(Repository local,
boolean inCore)
Create a new merge instance for a repository.
|
| Modifier and Type | Method and Description |
|---|---|
ObjectId |
getBaseCommitId() |
boolean |
merge(AnyObjectId... tips)
Merge together two or more tree-ish objects.
|
protected AbstractTreeIterator |
mergeBase()
Create an iterator to walk the merge base.
|
void |
setBase(AnyObjectId id)
Set the common ancestor tree.
|
getBaseCommit, getBaseCommit, getObjectInserter, getRepository, getResultTreeId, merge, mergeImpl, openTree, setObjectInserterprotected ThreeWayMerger(Repository local)
local - the repository this merger will read and write data on.protected ThreeWayMerger(Repository local, boolean inCore)
local - the repository this merger will read and write data on.inCore - perform the merge in core with no working folder involvedpublic void setBase(AnyObjectId id) throws MissingObjectException, IncorrectObjectTypeException, IOException
id - common base treeish; null to automatically compute the common
base from the input commits during
merge(AnyObjectId...).IncorrectObjectTypeException - the object is not a treeish.MissingObjectException - the object does not exist.IOException - the object could not be read.public boolean merge(AnyObjectId... tips) throws IOException
MergerAny tree-ish may be supplied as inputs. Commits and/or tags pointing at trees or commits may be passed as input objects.
merge in class Mergertips - source trees to be combined together. The merge base is not
included in this set.IncorrectObjectTypeException - one of the input objects is not a commit, but the strategy
requires it to be a commit.IOException - one or more sources could not be read, or outputs could not
be written to the Repository.public ObjectId getBaseCommitId()
getBaseCommitId in class Mergerprotected AbstractTreeIterator mergeBase() throws IOException
IOExceptionCopyright © 2014. All rights reserved.