NAME
Merge - merge structures according provided rules
OPTIONS
- --[no]blame
-
Blame calculation toggle. Enabled by default.
- --cond <path>
-
Apply rule when condition met only. Condition is met when path leads to at least one item in the structure. May be used several times (in this case conditions are AND'ed).
- --ignore <path>
-
Ignore part from source structure. Rule-wide option. May be used several times.
- --merge <path>
-
Path in the source structure to merge. Whole structure will be merged if omitted or empty. May be specified several times.
- --preserve <path>
-
Preserve specified substructure. Rule-wide option. May be used several times.
- --source <uri>
-
Source to merge with. Original processing structure will be used if option specified, but value not defined or empty. Rule-wide option. May be used several times.
- --structure <JSON>
-
JSON structure to merge with. Rule-wide option. May be used several times.
- --[no]strict
-
Fail if specified path doesn't exist in source structure. Positional opt - defines rule default if used before --merge, per-merge opt otherwise. Enabled by default.
- --style <style>
-
Merge style. Positional option - define rule default if used before --merge, per-merge opt otherwise.
- L_ADDITIVE, R_ADDITIVE
-
Hashes merged, arrays joined, undefined scalars overrided. Left and right precedence.
- L_OVERRIDE, R_OVERRIDE
-
Hashes merged, arrays and scalars overrided. Left and right precedence.
- L_REPLACE, R_REPLACE
-
Nothing merged. One thing simply replaced by another. Left and right precedence.
Default is R_OVERRIDE