One of Arch's strengths is its merge commands. But there are a bunch of them, and it can be hard to know which to use in which situation.
One strategy, many commands
replay, update and star-merge can all use an apply-delta strategy to perform merges. Star-merge has an additional strategy available.
replay REVISION is a special case of apply-delta-- it applies the delta between a revision and its ancestor to the current tree. replay VERSION just repeats the process for every revision in the version that doesn't have a patchlog in the tree.
update has two strategies, but both are based on apply-delta. When dealing with a commit-based version in the absense of revision libraries, it does replay VERSION. Otherwise, it determines the last revision with a patchlog in the tree, and the last revision in the archive, calculates their delta, and applies it.
star-merge is more sophisticated than update in two ways. The first is its more complicated method of selecting revisions. The second is that it has another merge strategy, beyond apply-delta: three-way.
