The "cherrypick" command:
Or: fossil cherrypick ?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 "cherrypick" instead of "merge", this command works exactly like "merge --cherrypick".
Files which are renamed in the merged-in branch will be renamed in the current check-out.
If the VERSION argument is omitted, then Fossil attempts to find a recent fork on the current branch to merge.
Note that this command does not commit the merge, as that is a separate step.
If there are multiple VERSION arguments, then each VERSION is merged (or cherrypicked) in the order that they appear on the command-line.
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
 - Do not actually change files on disk
 - --nosync
 - Do not auto-sync prior to merging
 - --noundo
 - Do not record changes in the undo log
 - -v|--verbose
 - Show additional details of the merge