The "merge" command:

Usage: fossil merge ?OPTIONS? ?VERSION?

The argument VERSION is a version that should be merged into the current check-out. All changes from VERSION back to the nearest common ancestor are merged. Except, if either of the --cherrypick or --backout options are used only the changes associated with the single check-in VERSION are merged. The --backout option causes the changes associated with VERSION to be removed from the current check-out rather than added. When invoked with the name cherry-pick, this command works exactly like merge --cherrypick.

If the VERSION argument is omitted, then Fossil attempts to find a recent fork on the current branch to merge.

Only file content is merged. The result continues to use the file and directory names from the current check-out even if those names might have been changed in the branch being merged in.

Options:

--backout
Do a reverse cherrypick merge against VERSION. In other words, back out the changes that were added by VERSION.
--baseline BASELINE
Use BASELINE as the "pivot" of the merge instead of the nearest common ancestor. This allows a sequence of changes in a branch to be merged without having to merge the entire branch.
--binary GLOBPATTERN
Treat files that match GLOBPATTERN as binary and do not try to merge parallel changes. This option overrides the "binary-glob" setting.
--cherrypick
Do a cherrypick merge VERSION into the current check-out. A cherrypick merge pulls in the changes of the single check-in VERSION, rather than all changes back to the nearest common ancestor.
-f|--force
Force the merge even if it would be a no-op
--force-missing
Force the merge even if there is missing content
--integrate
Merged branch will be closed when committing
-K|--keep-merge-files
On merge conflict, retain the temporary files used for merging, named *-baseline, *-original, and *-merge.
-n|--dry-run
If given, display instead of run actions
-v|--verbose
Show additional details of the merge