osmium-merge-changes(1) merge several OSM change files into one


osmium merge-changes [OPTIONS] OSM-CHANGE-FILE...


Merges the content of all change files given on the command line into one large change file. Objects are sorted by type, ID, version, and timestamp so it doesn't matter in what order the change files are given or in what order they contain the data.


-s, --simplify
Only write the last version of any object to the output. For an object created in one of the change files and removed in a later one, the deleted version of the object will still appear because it is the latest version.


-h, --help
Show usage help.
-v, --verbose
Set verbose mode. The program will output information about what it is doing to stderr.


-F, --input-format=FORMAT
The format of the input file(s). Can be used to set the input format if it can't be autodetected from the file name(s). This will set the format for all input files, there is no way to set the format for some input files only. See osmium-file-formats(5) or the libosmium manual for details.


-f, --output-format=FORMAT
The format of the output file. Can be used to set the output file format if it can't be autodetected from the output file name. See osmium-file-formats(5) or the libosmium manual for details.
Call fsync after writing the output file to force flushing buffers to disk.
The name and version of the program generating the output file. It will be added to the header of the output file. Default is "osmium/" and the version of osmium.
-o, --output=FILE
Name of the output file. Default is '-' (stdout).
-O, --overwrite
Allow an existing output file to be overwritten. Normally osmium will refuse to write over an existing file.
Add output header option. This option can be given several times. See the libosmium manual for a list of allowed header options.


osmium merge-changes exits with exit code

if everything went alright,
if there was an error processing the data, or
if there was a problem with the command line arguments.


osmium merge-changes keeps the contents of all the change files in main memory. This will take roughly 10 times as much memory as the files take on disk in .osm.bz2 format.


Merge all changes in changes directory into all.osc.gz:

osmium merge-changes -o all.osc.gz changes/*.gz

Because osmium merge-changes sorts its input, you can also use it to sort just a single change file:

osmium merge-changes unsorted.osc.gz -o sorted.osc.gz


Copyright (C) 2013-2015 Jochen Topf <[email protected]>.

License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.


If you have any questions or want to report a bug, please go to http://osmcode.org/contact.html


Jochen Topf <[email protected]>.