bionic (1) osmium-derive-changes.1.gz

Provided by: osmium-tool_1.7.1-1_amd64 bug

NAME

       osmium-derive-changes - create OSM change files from two OSM data files

SYNOPSIS

       osmium derive-changes [OPTIONS] OSM-FILE1 OSM-FILE2

DESCRIPTION

       Finds  differences between two OSM files and creates a change file with those differences.  The resulting
       change file is created in a way, that it could be applied on OSM-FILE1 to re-create OSM-FILE2.

       Objects in both input files must be sorted by type, ID, and version.  The first input file must be from a
       point in time before the second input file.

       Only  object type, id, and version are compared, so this program will not detect differences in, say, the
       tags, unless the object has a new version, which is the normal way things work in OSM.  If  you  need  to
       compare all data in OSM files, have a look at the osmium diff program.

       For  this  command  to create a proper change file you have to set the --output option or --output-format
       option in a way that it will generate an .osc file, typically by using something  like  '-o  out.osc.gz'.
       You  can  create any other OSM file format, but that is usually not what you want.  Osmium derive-changes
       will warn you in this case.

       Note that for objects that are in OSM-FILE1 but not OSM-FILE2 a "deleted" entry will be  created  in  the
       output.   But  because  we  can not know when this deletion actually occurred, in which changeset, and by
       which user, it is unclear what attributes this deleted object should have.  Also, if you are working with
       extracts,  the object might not actually have been deleted in the OSM database, but just moved out of the
       extract you are looking at.  So a real, new, "deleted" version was never created.  Usually the  "deleted"
       object  will  get  the  same  version  number  and  timestamp  as  the object in OSM-FILE1 had, all other
       information will be removed.  But you can change this using the --increment-version, --keep-details,  and
       --update-timestamp  options.   Depending on which software you are using the change files with, different
       settings might be necessary.

       This commands reads its input files only once and writes its output file in one go so it can be streamed,
       ie.  it can read from STDIN and write to STDOUT.

OPTIONS

       --increment-version
              Increment version number of deleted objects.

       --keep-details
              Keep  details  of  deleted  objects.   Usually  only id, version, and timestamp are kept.  If this
              option is set all attributes, all  tags,  and  all  nodes  or  members  for  ways  and  relations,
              respectively, are kept.

       --update-timestamp
              Update timestamp of deleted objects to the current time.  This is the same behaviour as Osmosis.

COMMON OPTIONS

       -h, --help
              Show usage help.

       -v, --verbose
              Set verbose mode.  The program will output information about what it is doing to STDERR.

INPUT OPTIONS

       -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.

OUTPUT OPTIONS

       -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.

       --fsync
              Call fsync after writing the output file to force flushing buffers to disk.

       --generator=NAME
              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.

       --output-header=OPTION
              Add output header option.  This option can be given several times.  See the libosmium manual for a
              list of allowed header options.

DIAGNOSTICS

       osmium derive-changes exits with exit code

       0      if everything went alright,

       1      if there was an error processing the data, or

       2      if there was a problem with the command line arguments.

MEMORY USAGE

       osmium derive-changes doesn't keep a lot of data in memory.

EXAMPLES

       Find changes in Nepal extract in January 2016:

              osmium derive-changes nepal-20160101.osm.pbf nepal-20160201.osm.pbf -o nepal-jan.osc.bz2

SEE ALSO

osmium(1), osmium-file-formats(5), osmium-apply-changes(1), osmium-diff(1)

       • Osmium website (http://osmcode.org/osmium-tool/)

       Copyright (C) 2013-2017 Jochen Topf <jochen@topf.org>.

       License GPLv3+: GNU GPL version 3 or later <https://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.

CONTACT

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

AUTHORS

       Jochen Topf <jochen@topf.org>.

                                                      1.7.1                             OSMIUM-DERIVE-CHANGES(1)