Provided by: osc_0.152.0-1_all bug

NAME

       osc - openSUSE build service command-line tool.

SYNOPSIS

       osc [GLOBALOPTS] SUBCOMMAND [OPTS] [ARGS...]
       osc help SUBCOMMAND

DESCRIPTION

       openSUSE build service command-line tool.

   COMMANDS
       add    Mark files to be added upon the next commit

              In case a URL is given the file will get downloaded and registered to be downloaded
              by the server as well via the download_url source service.

              This is recommended for release tar balls to track their source and to help  others
              to review your changes esp. on version upgrades.

              usage:
                  osc add URL [URL...]
                  osc add FILE [FILE...]

       addremove (ar)
              Adds new files, removes disappeared files

              Adds all files new in the local copy, and removes all disappeared files.

              ARG, if specified, is a package working copy.

              Usage:
                  osc addremove [ARGS...]

              Options:
                  -h, --help  show this help message and exit
                  -r, --recursive
                              If CWD is a project dir then scan all package dirs as
                              well

       aggregatepac
              "Aggregate" a package to another package

              Aggregation  of  a package means that the build results (binaries) of a package are
              basically copied into another project.  This can be used to make packages available
              from  building  that  are  needed  in  a  project but available only in a different
              project.  Note  that  this  is  done  at   the   expense   of   disk   space.   See
              http://en.opensuse.org/openSUSE:Build_Service_Tips_and_Tricks#link_and_aggregate
              for more information.

              The DESTPAC name is optional; the source packages' name will be used if DESTPAC  is
              omitted.

              usage:
                  osc aggregatepac SOURCEPRJ SOURCEPAC DESTPRJ [DESTPAC] Options:
                  -h, --help  show this help message and exit
                  -d, --disable-publish
                              disable publishing of the aggregated package
                  -m SRC=TARGET[,SRC=TARGET], --map-repo=SRC=TARGET[,SRC=TARGET]
                              Allows repository mapping(s) to be given as
                              SRC=TARGET[,SRC=TARGET]
                  --nosources
                              ignore source packages when copying build results to
                              destination project

       api    Issue an arbitrary request to the API

              Useful for testing.

              URL  can be specified either partially (only the path component), or fully with URL
              scheme and hostname ('http://...').

              Note the global -A and -H options (see osc help).

              Examples:
                osc api /source/home:user
                osc api -X PUT -T /etc/fstab source/home:user/test5/myfstab
                osc api -e /configuration

              Usage:
                  osc api URL

              Options:
                  -h, --help  show this help message and exit
                  -a NAME STRING, --add-header=NAME STRING
                              add the specified header to the request
                  -T FILE, -f FILE, --file=FILE
                              specify filename to upload, uses PUT mode by default
                  -d STRING, --data=STRING
                              specify string data for e.g. POST
                  -e, --edit  GET, edit and PUT the location
                  -X HTTP_METHOD, -m HTTP_METHOD, --method=HTTP_METHOD
                              specify HTTP method to use (GET|PUT|DELETE|POST)

       branch (bco, branchco, getpac)
              Branch a package

              [See http://en.opensuse.org/openSUSE:Build_Service_Collaboration for information on
              this topic.]

              Create  a  source link from a package of an existing project to a new subproject of
              the requesters home project (home:branches:)

              The branched package will live in
                  home:USERNAME:branches:PROJECT/PACKAGE if nothing else specified.

              With getpac or bco, the branched package will come from one of
                  openSUSE:Factory  (list  of  projects  from  oscrc:getpac_default_project)   if
              nothing else is specfied on the command line.

              usage:
                  osc branch
                  osc branch SOURCEPROJECT SOURCEPACKAGE
                  osc branch SOURCEPROJECT SOURCEPACKAGE TARGETPROJECT
                  osc branch SOURCEPROJECT SOURCEPACKAGE TARGETPROJECT TARGETPACKAGE
                  osc getpac SOURCEPACKAGE
                  osc bco ...  Options:
                  -h, --help  show this help message and exit
                  -r rev, --revision=rev
                              branch against a specific revision
                  -N, --new-package
                              create a branch pointing to a not yet existing package
                  -M, --maintenance
                              Create project and package in maintenance mode
                  -m TEXT, --message=TEXT
                              specify message TEXT
                  --noaccess  Create a hidden project
                  --extend-package-names
                              Extend packages names with project name as suffix
                  --add-repositories
                              Add repositories to target project (happens by default
                              when project is new)
                  -f, --force
                              force branch, overwrite target
                  -c, --checkout
                              Checkout branched package afterwards using "co -e
                              -S"('osc bco' is a shorthand for this option)
                  --nodevelproject
                              do not follow a defined devel project (primary project
                              where a package is developed)

       build  Build a package on your local machine

              You  need  to  call  the  command  inside  a  package  directory, which should be a
              buildsystem checkout. (Local modifications are fine.)

              The arguments REPOSITORY and ARCH can be taken from the first two  columns  of  the
              'osc repos' output. BUILD_DESCR is either a RPM spec file, or a Debian dsc file.

              The  command  honours packagecachedir, build-root and build-uid settings in .oscrc,
              if present. You may want to set su-wrapper = 'sudo' in .oscrc, and  configure  sudo
              with option NOPASSWD for /usr/bin/build.

              If  neither  --clean nor --noinit is given, build will reuse an existing build-root
              again, removing unneeded packages and add missing ones. This is usually the fastest
              option.

              If  the  package doesn't exist on the server please use the --local-package option.
              If the project  of  the  package  doesn't  exist  on  the  server  please  use  the
              --alternative-project <alternative-project> option: Example:
                  osc build [OPTS] --alternative-project openSUSE:10.3 standard i586 BUILD_DESCR

              usage:
                  osc build [OPTS] REPOSITORY ARCH BUILD_DESCR
                  osc build [OPTS] REPOSITORY ARCH
                  osc   build  [OPTS]  REPOSITORY  (ARCH  =  hostarch,  BUILD_DESCR  is  detected
              automatically)
                  osc  build  [OPTS]  ARCH  (REPOSITORY  =  build_repository   (config   option),
              BUILD_DESCR is detected automatically)
                  osc  build  [OPTS]  BUILD_DESCR (REPOSITORY = build_repository (config option),
              ARCH = hostarch)
                  osc build  [OPTS]  (REPOSITORY  =  build_repository  (config  option),  ARCH  =
              hostarch, BUILD_DESCR is detected automatically)

              #  Note:  #  Configuration  can  be  overridden  by envvars, e.g.  # OSC_SU_WRAPPER
              overrides the setting of su-wrapper.  # OSC_BUILD_ROOT  overrides  the  setting  of
              build-root.  # OSC_PACKAGECACHEDIR overrides the setting of packagecachedir.

              Options:
                  -h, --help  show this help message and exit
                  --trust-all-projects
                              trust packages from all projects
                  --host=HOST
                              perform the build on a remote server -
                              user@server:~/remote/directory
                  --oldpackages=DIR
                              take previous build from DIR (special values: _self,
                              _link)
                  --download-api-only
                              only fetch packages from the api
                  --disable-cpio-bulk-download
                              disable downloading packages as cpio archive from api
                  --release=N
                              set release number of the package to N
                  -b, --baselibs
                              Create -32bit/-64bit/-x86 rpms for other architectures
                  --disable-debuginfo
                              disable build of debuginfo packages
                  -d, --debuginfo
                              also build debuginfo sub-packages
                  --alternative-project=PROJECT
                              specify the build target project
                  --target=TARGET
                              define target platform
                  --vm-type=TYPE
                              use VM type TYPE (e.g. kvm)
                  --linksources
                              use hard links instead of a deep copied source
                  --local-package
                              build a package which does not exist on the server
                  --build-uid=uid:gid|"caller"
                              specify the numeric uid:gid pair to assign to the
                              unprivileged "abuild" user or use "caller" to use the
                              current user uid:gid
                  --userootforbuild
                              Run build as root. The default is to build as
                              unprivileged user. Note that a line "# norootforbuild"
                              in the spec file will invalidate this option.
                  --define='X Y'
                              define macro X with value Y
                  --without=X
                              disable feature X for build
                  --with=X    enable feature X for build
                  --ccache    use ccache to speed up rebuilds
                  --icecream=N
                              use N parallel build jobs with icecream
                  -t N, --threads=N
                              Compile with N threads
                  -j N, --jobs=N
                              Compile with N jobs
                  --root=ROOT
                              Build in specified directory
                  -x PAC, --extra-pkgs=PAC
                              Add this package when installing the build-root
                  -k DIR, --keep-pkgs=DIR
                              Save built packages into this directory
                  -p DIR, --prefer-pkgs=DIR
                              Prefer packages from this directory when installing
                              the build-root
                  --noservice, --no-service
                              Skip run of local source services as specified in
                              _service file.
                  --no-verify, --noverify
                              Skip signature verification of packages used for
                              build. (Global config in .oscrc: no_verify)
                  --nochecks, --no-checks
                              Do not run build checks on the resulting packages.
                  --noinit, --no-init
                              Skip initialization of build root and start with build
                              immediately.
                  --overlay=OVERLAY
                              Copy overlay filesystem to buildroot after installing
                              all RPMs .
                  --rsync-dest=RSYNCDESTPATH
                              Copy folder to buildroot after installing all RPMs.
                              Use together with --rsync-src. This is the path on the
                              TARGET filesystem e.g.
                              /usr/src/packages/BUILD/linux-2.6 .
                  --rsync-src=RSYNCSRCPATH
                              Copy folder to buildroot after installing all RPMs.
                              Use together with --rsync-dest. This is the path on
                              the HOST filesystem e.g. /tmp/linux-kernel-tree. It
                              defines RSYNCDONE 1 .
                  --no-changelog
                              don't update the package changelog from a changes file
                  -l, --preload
                              Preload all files into the cache for offline operation
                  -o, --offline
                              Start with cached prjconf and packages without
                              contacting the api server
                  --clean     Delete old build root before initializing it

       buildconfig
              Shows the build config

              Shows the build configuration which is used in building a package.  This command is
              mostly used internally by the 'build' command.

              The returned data is the project-wide build configuration  in  a  format  which  is
              directly  readable  by  the  build script. It contains RPM macros and BuildRequires
              expansions, for example.

              The argument REPOSITORY an be taken from the first column of the
               'osc repos' output.

              usage:
                  osc buildconfig REPOSITORY                      (in pkg or prj dir)
                  osc buildconfig PROJECT REPOSITORY

       buildhistory (buildhist)
              Shows the build history of a package

              The arguments REPOSITORY and ARCH can be taken from the first two  columns  of  the
              'osc repos' output.

              usage:
                 osc buildhist REPOSITORY ARCHITECTURE
                 osc buildhist PROJECT PACKAGE REPOSITORY ARCHITECTURE Options:
                  -h, --help  show this help message and exit
                  --csv       generate output in CSV (separated by |)

       buildinfo
              Shows the build info

              Shows the build "info" which is used in building a package.  This command is mostly
              used internally by the 'build' subcommand.  It needs to be  called  from  within  a
              package directory.

              The BUILD_DESCR argument is optional. BUILD_DESCR is a local RPM specfile or Debian
              "dsc" file. If specified, it is sent to the server, and the buildinfo will be based
              on  it. If the argument is not supplied, the buildinfo is derived from the specfile
              which is currently on the source repository server.

              The returned data is XML and contains a list of  the  packages  used  in  building,
              their source, and the expanded BuildRequires.

              The  arguments  REPOSITORY  and ARCH are optional. They can be taken from the first
              two columns of the 'osc repos' output. If not specified, REPOSITORY defaults to the
              'build_repositoy'  config  entry  in  your  '.oscrc' and ARCH defaults to your host
              architecture.

              usage:
                  in a package working copy:
                      osc buildinfo [OPTS] REPOSITORY ARCH BUILD_DESCR
                      osc buildinfo [OPTS] REPOSITORY (ARCH = hostarch, BUILD_DESCR  is  detected
              automatically)
                      osc  buildinfo  [OPTS] ARCH (REPOSITORY = build_repository (config option),
              BUILD_DESCR is detected automatically)
                      osc buildinfo [OPTS] BUILD_DESCR  (REPOSITORY  =  build_repository  (config
              option), ARCH = hostarch)
                      osc buildinfo [OPTS] (REPOSITORY = build_repository (config option), ARCH =
              hostarch, BUILD_DESCR is detected automatically)
                      Note: if BUILD_DESCR does not exist locally the remote BUILD_DESCR is used

                  osc buildinfo [OPTS] PROJECT PACKAGE REPOSITORY ARCH [BUILD_DESCR]

              Options:
                  -h, --help  show this help message and exit
                  -p DIR, --prefer-pkgs=DIR
                              Prefer packages from this directory when installing
                              the build-root
                  -x PAC, --extra-pkgs=PAC
                              Add this package when computing the buildinfo
                  -d, --debug
                              verbose output of build dependencies

       buildlog (bl, blt, buildlogtail)
              Shows the build log of a package

              Shows the log file of the build of a package. Can be used to follow the  log  while
              it is being written.  Needs to be called from within a package directory.

              When called as buildlogtail (or blt) it just shows the end of the logfile.  This is
              useful to see just a build failure reasons.

              The arguments REPOSITORY and ARCH are the first two columns in  the  'osc  results'
              output.  If  the  buildlog  url  is  used buildlog command has the same behavior as
              remotebuildlog.

              Usage:
                  osc buildlog [ARGS...]

              [REPOSITORY ARCH | BUILDLOGURL] Options:
                  -h, --help  show this help message and exit
                  -s, --strip-time
                              strip leading build time from the log
                  -o OFFSET, --offset=OFFSET
                              get log start or end from the offset
                  -l, --last  Show the last finished log file

       cat (less)
              Output the content of a file to standard output

              Examples:
                  osc cat project package file
                  osc cat project/package/file
                  osc cat http://api.opensuse.org/build/.../_log
                  osc cat http://api.opensuse.org/source/../_link

              Usage:
                  osc cat [ARGS...]

              Options:
                  -h, --help  show this help message and exit
                  -M, --meta  list meta data files
                  -u, --unexpand
                              always work with unexpanded packages.
                  -e, --expand
                              force expansion of linked packages.
                  -r rev, --revision=rev
                              print out the specified revision

       changedevelrequest (changedevelreq, cr)
              Create request to change the devel package definition.

              [See http://en.opensuse.org/openSUSE:Build_Service_Collaboration for information on
              this topic.]

              See the "request" command for showing and modifing existing requests.

              osc changedevelrequest PROJECT PACKAGE DEVEL_PROJECT [DEVEL_PACKAGE]

       checkout (co)
              Check out content from the repository

              Check out content from the repository server, creating a local working copy.

              When  checking out a single package, the option --revision can be used to specify a
              revision of the package to be checked out.

              When a package is a source link, then it will be checked out in expanded  form.  If
              --unexpand-link  option  is  used,  the checkout will instead produce the raw _link
              file plus patches.

              usage:
                  osc co PROJECT [PACKAGE] [FILE]
                     osc co PROJECT                    # entire project
                     osc co PROJECT PACKAGE            # a package
                     osc co PROJECT PACKAGE FILE       # single file -> to current dir

                  while inside a project directory:
                     osc co PACKAGE                    # check out PACKAGE from project

                  with the result of rpm -q --qf '%{DISTURL}0 PACKAGE
                     osc co obs://API/PROJECT/PLATFORM/REVISION-PACKAGE

              Options:
                  -h, --help  show this help message and exit
                  -l limit_size, --limit-size=limit_size
                              Skip all files with a given size
                  -S, --server-side-source-service-files
                              Use server side generated sources instead of local
                              generation.
                  -s, --source-service-files
                              Run source services.
                  -o outdir, --output-dir=outdir
                              place package in the specified directoryinstead of a
                              PROJECT/PACKAGE directory
                  -c, --current-dir
                              place PACKAGE folder in the current directoryinstead
                              of a PROJECT/PACKAGE directory
                  -M, --meta  checkout out meta data instead of sources
                  -u, --unexpand-link
                              if a package is a link, check out the _link file
                              instead of the expanded sources
                  -e, --expand-link
                              if a package is a link, check out the expanded sources
                              (no-op, since this became the default)
                  -r rev, --revision=rev
                              checkout the specified revision. NOTE: if you checkout
                              the complete project this option is ignored!

       chroot opens a shell inside of the build root

              chroot into the build root for the given repository,  arch  and  build  description
              (NOTE: this command does not work if a VM is used)

              usage:
                  osc chroot [OPTS] REPOSITORY ARCH BUILD_DESCR
                  osc  chroot  [OPTS]  REPOSITORY  (ARCH  =  hostarch,  BUILD_DESCR  is  detected
              automatically)
                  osc  chroot  [OPTS]  ARCH  (REPOSITORY  =  build_repository  (config   option),
              BUILD_DESCR is detected automatically)
                  osc  chroot  [OPTS] BUILD_DESCR (REPOSITORY = build_repository (config option),
              ARCH = hostarch)
                  osc chroot [OPTS]  (REPOSITORY  =  build_repository  (config  option),  ARCH  =
              hostarch, BUILD_DESCR is detected automatically) Options:
                  -h, --help  show this help message and exit
                  -o, --offline
                              Use cached data without contacting the api server
                  --root=ROOT
                              Path to the buildroot
                  -r, --login-as-root
                              login as root instead of abuild
                  --noinit, --no-init
                              do not guess/verify specified repository
                  --alternative-project=PROJECT
                              specify the used build target project
                  --local-package
                              package doesn't exist on the server

       clean  removes all untracked files from the package working copy

              Examples:
                  osc clean <path>

              Note: if <path> is omitted it defaults to '.' (<path> has to
                    be a package working copy)

              Warning: This command removes all files with status '?'.

              Usage:
                  osc clean [ARGS...]

              Options:
                  -h, --help  show this help message and exit
                  -n, --dry-run
                              print the results without actually removing a file

       commit (checkin, ci)
              Upload content to the repository server

              Upload content which is changed in your working copy, to the repository server.

              examples:
                 osc ci                   # current dir
                 osc ci <dir>
                 osc ci file1 file2 ...

              Usage:
                  osc commit [ARGS...]

              Options:
                  -h, --help  show this help message and exit
                  --skip-local-service-run, --noservice
                              Skip service run of configured source services for
                              local run
                  -v, --verbose
                              Run the source services with verbose information
                  --skip-validation
                              deprecated, don't use it
                  -f, --force
                              ignored
                  -F FILE, --file=FILE
                              read log message from FILE, '-' denotes standard
                              input.
                  -n, --no-message
                              do not specify a log message
                  -m TEXT, --message=TEXT
                              specify log message TEXT

       config get/set a config option

              Examples:
                  osc config section option (get current value)
                  osc config section option value (set to value)
                  osc config section option --delete (delete option/reset to the default)
                  (section is either an apiurl or an alias or 'general')
                  osc config --dump (dump the complete configuration)

              Usage:
                  osc config [ARGS...]

              Options:
                  -h, --help  show this help message and exit
                  --dump-full
                              dump the complete configuration (including 'pass' and
                              'passx' options)
                  --dump      dump the complete configuration (without 'pass' and
                              'passx' options)
                  --no-echo   prompt for a value but do not echo entered characters
                  -p, --prompt
                              prompt for a value
                  -s, --stdin
                              indicates that the config value should be read from
                              stdin
                  -d, --delete
                              delete option from config or reset option to the
                              default)

       copypac
              Copy a package

              A way to copy package to somewhere else.

              It  can  be  done across buildservice instances, if the -t option is used.  In that
              case, a client-side copy and link expansion are implied.

              Using --client-side-copy always involves downloading all files, and uploading  them
              to the target.

              The  DESTPAC name is optional; the source packages' name will be used if DESTPAC is
              omitted.

              usage:
                  osc copypac SOURCEPRJ SOURCEPAC DESTPRJ [DESTPAC] Options:
                  -h, --help  show this help message and exit
                  -e, --expand
                              if the source package is a link then copy the expanded
                              version of the link
                  -m TEXT, --message=TEXT
                              specify message TEXT
                  -t URL, --to-apiurl=URL
                              URL of destination api server. Default is the source
                              api server.
                  -r rev, --revision=rev
                              copy the specified revision.
                  -d, --keep-develproject
                              keep develproject tag in the package metadata
                  -K, --keep-link
                              keep the source link in target, this also expands the
                              source
                  -k, --keep-maintainers
                              keep original maintainers. Default is remove all and
                              replace with the one calling the script.
                  -c, --client-side-copy
                              do a (slower) client-side copy

       createincident
              Create a maintenance incident

              [See                      http://doc.opensuse.org/products/draft/OBS/obs-reference-
              guide_draft/cha.obs.maintenance_setup.html for information on this topic.]

              This  command  is asking to open an empty maintence incident. This can usually only
              be done by a responsible maintenance team.  Please see the "mbranch" command on how
              to  full  such  a  project content and the "patchinfo" command how add the required
              maintenance update information.

              usage:
                  osc createincident [ MAINTENANCEPROJECT ] Options:
                  -h, --help  show this help message and exit
                  -m TEXT, --message=TEXT
                              specify message TEXT
                  --noaccess  Create a hidden project
                  -a ATTRIBUTE, --attribute=ATTRIBUTE
                              Use this attribute to find default maintenance project
                              (default is OBS:MaintenanceProject)

       createrequest (creq)
              create multiple requests with a single command

              usage:
                  osc creq [OPTIONS] [
                      -a submit SOURCEPRJ SOURCEPKG DESTPRJ [DESTPKG]
                      -a delete PROJECT [PACKAGE]
                      -a change_devel PROJECT PACKAGE DEVEL_PROJECT [DEVEL_PACKAGE]
                      -a add_me ROLE PROJECT [PACKAGE]
                      -a add_group GROUP ROLE PROJECT [PACKAGE]
                      -a add_role USER ROLE PROJECT [PACKAGE]
                      -a set_bugowner USER PROJECT [PACKAGE]
                      ]

                  Option -m works for all types of  request,  the  rest  work  only  for  submit.
              example:
                  osc   creq   -a   submit   -a  delete  home:someone:branches:openSUSE:Tools  -a
              change_devel openSUSE:Tools osc home:someone:branches:openSUSE:Tools -m ok

                  This will submit all modified packages under current directory, delete  project
              home:someone:branches:openSUSE:Tools    and    change    the   devel   project   to
              home:someone:branches:openSUSE:Tools for package  osc  in  project  openSUSE:Tools.
              Options:
                  -h, --help  show this help message and exit
                  --yes       proceed without asking.
                  --no-update
                              never touch source package on accept (will break
                              source links)
                  --no-cleanup
                              never remove source package on accept, but update its
                              content
                  --cleanup   remove package if submission gets accepted (default
                              for home:<id>:branch projects)
                  --nodevelproject
                              do not follow a defined devel project (primary project
                              where a package is developed)
                  -s SUPERSEDE, --supersede=SUPERSEDE
                              Superseding another request by this one
                  -r REV, --revision=REV
                              for "create", specify a certain source revision ID
                              (the md5 sum)
                  -m TEXT, --message=TEXT
                              specify message TEXT
                  -a, --action
                              specify action type of a request, can be :
                              submit/delete/change_devel/add_role/set_bugowner

       delete (del, remove, rm)
              Mark files or package directories to be deleted upon the next 'checkin'

              usage:
                  cd .../PROJECT/PACKAGE
                  osc delete FILE [...]
                  cd .../PROJECT
                  osc delete PACKAGE [...]

              This  command  works  on check out copies. Use "rdelete" for working on server side
              only. This is needed for removing the entire project.

              As a safety measure, projects must be empty (i.e., you need to delete all  packages
              first).

              If  you  are sure that you want to remove a package and all its files use '--force'
              switch. Sometimes this also works without --force.

              Options:
                  -h, --help  show this help message and exit
                  -f, --force
                              forces removal of entire package and its files

       deleterequest (deletereq, dr, dropreq, droprequest)
              Request to delete (or 'drop') a package or project

              usage:
                  osc  deletereq  [-m  TEXT]                       #   works   in   checked   out
              project/package
                  osc deletereq [-m TEXT] PROJECT [PACKAGE]
                  osc deletereq [-m TEXT] PROJECT [--repository REPOSITORY] Options:
                  -h, --help  show this help message and exit
                  --accept-in-hours=HOURS
                              specify time when request shall get accepted
                              automatically. Only works with write permissions in
                              target.
                  -r REPOSITORY, --repository=REPOSITORY
                              specify repository
                  -m TEXT, --message=TEXT
                              specify message TEXT

       dependson (whatdependson)
              Show the build dependencies

              The  command  dependson  and  whatdependson  can  be  used to find out what will be
              triggered when a certain package changes.  This is  no  guarantee,  since  the  new
              build might have changed dependencies.

              dependson  shows  the  build  dependencies  inside  of a project, valid for a given
              repository and architecture.  NOTE: to see all binary packages, which can trigger a
              build you need to
                    refer the buildinfo, since this command shows only the dependencies
                    inside of a project.

              The  arguments  REPOSITORY  and ARCH can be taken from the first two columns of the
              'osc repos' output.

              usage in package or project directory:
                  osc dependson REPOSITORY ARCH
                  osc whatdependson REPOSITORY ARCH

              usage:
                  osc dependson PROJECT [PACKAGE] REPOSITORY ARCH
                  osc whatdependson PROJECT [PACKAGE] REPOSITORY ARCH

       detachbranch
              replace a link with its expanded sources

              If a package is a link it is replaced with its expanded sources. The link does  not
              exist anymore.

              usage:
                  osc detachbranch                    # can be used in package working copy
                  osc detachbranch PROJECT PACKAGE Options:
                  -h, --help  show this help message and exit
                  -m TEXT, --message=TEXT
                              specify message TEXT

       develproject (bsdevelproject, dp)
              print the devel project / package of a package

              Examples:
                  osc develproject PRJ PKG
                  osc develproject Options:
                  -h, --help  show this help message and exit
                  -r, --raw   deprecated option

       diff (di, ldiff, linkdiff)
              Generates a diff

              Generates a diff, comparing local changes against the repository server.

              Usage:
                  osc diff [ARGS...]

                      ARG, if specified, is a filename to include in the diff.
                      Default: all files.

                  osc diff --link
                  osc linkdiff
                      Compare current checkout directory against the link base.

                  osc diff --link PROJ PACK
                  osc linkdiff PROJ PACK
                      Compare a package against the link base (ignoring working copy changes).

              Options:
                  -h, --help  show this help message and exit
                  --missingok
                              do not fail if the source or target project/package
                              does not exist on the server
                  -l, --link  (osc linkdiff): compare against the base revision of
                              the link
                  -p, --plain
                              output the diff in plain (not unified) diff format
                  -r rev1[:rev2], --revision=rev1[:rev2]
                              If rev1 is specified it will compare your working copy
                              against the revision (rev1) on the server. If rev1 and
                              rev2 are specified it will compare rev1 against rev2
                              (NOTE: changes in your working copy are ignored in
                              this case)
                  -c rev, --change=rev
                              the change made by revision rev (like -r rev-1:rev).If
                              rev is negative this is like -r rev:rev-1.

       distributions (dists)
              Shows all available distributions

              This  command  shows the available distributions. For active distributions it shows
              the name, project and name of the repository and  a  suggested  default  repository
              name.

              usage:
                  osc distributions

       getbinaries
              Download binaries to a local directory

              This  command  downloads  packages directly from the api server.  Thus, it directly
              accesses the packages that are used for building others  even  when  they  are  not
              "published" yet.

              usage:
                 osc  getbinaries  REPOSITORY                                  # works in checked
              out project/package (check out all archs in subdirs)
                 osc getbinaries REPOSITORY ARCHITECTURE                    #  works  in  checked
              out project/package
                 osc getbinaries PROJECT PACKAGE REPOSITORY ARCHITECTURE
                 osc getbinaries PROJECT PACKAGE REPOSITORY ARCHITECTURE FILE Options:
                  -h, --help  show this help message and exit
                  --debug     also fetch debug packages
                  --sources   also fetch source packages
                  -d DIR, --destdir=DIR
                              destination directory
                  -q, --quiet
                              do not show downloading progress

       help (?, h)
              give detailed help on a specific sub-command

              usage:
                  osc help [SUBCOMMAND]

       importsrcpkg
              Import a new package from a src.rpm

              A  new  package  dir  will  be  created  inside  the  project dir (if no project is
              specified and the current working dir is a project dir the package will be  created
              in  this  project).  If the package does not exist on the server it will be created
              too otherwise the meta data of the existing package will be updated (<title />  and
              <description  />).   The  src.rpm will be extracted into the package dir. The files
              won't be committed unless you explicitly pass the --commit switch.

              SRPM is the path of the src.rpm in the local filesystem, or an URL.

              Usage:
                  osc importsrcpkg SRPM

              Options:
                  -h, --help  show this help message and exit
                  -c, --commit
                              commit the new files
                  --delete-old-files
                              delete existing files from the server
                  -d description, --description=description
                              set the description of the package
                  -t title, --title=title
                              set a title
                  -n name, --name=name
                              specify a package name
                  -p project, --project=project
                              specify the path to a project

       info   Print information about a working copy

              Print information about each ARG (default: '.')  ARG is a working-copy path.

              Usage:
                  osc info [ARGS...]

       init   Initialize a directory as working copy

              Initialize an existing directory to be a working  copy  of  an  (already  existing)
              buildservice project/package.

              (This  is  the  same  as  checking  out a package and then copying sources into the
              directory. It does NOT create a new package. To create a package, use 'osc meta pkg
              ... ...')

              You wouldn't normally use this command.

              To  get  a  working  copy  of a package (e.g. for building it or working on it, you
              would normally use the checkout command. Use "osc help checkout" to  get  help  for
              it.

              usage:
                  osc init PRJ
                  osc init PRJ PAC

       jobhistory (jobhist)
              Shows the job history of a project

              The  arguments  REPOSITORY  and ARCH can be taken from the first two columns of the
              'osc repos' output.

              usage:
                 osc jobhist REPOSITORY ARCHITECTURE  (in project dir)
                 osc jobhist PROJECT [PACKAGE] REPOSITORY ARCHITECTURE Options:
                  -h, --help  show this help message and exit
                  -l limit, --limit=limit
                              for setting the number of results
                  --csv       generate output in CSV (separated by |)

       linkpac
              "Link" a package to another package

              A linked package is a clone of another package, but plus  local  modifications.  It
              can be cross-project.

              The  DESTPAC name is optional; the source packages' name will be used if DESTPAC is
              omitted.

              Afterwards, you will want to 'checkout DESTPRJ DESTPAC'.

              To add a patch, add the patch as file and add it to the _link file.  You  can  also
              specify text which will be inserted at the top of the spec file.

              See the examples in the _link file.

              NOTE:  In  case  you  want  to  fix  or  update another package, you should use the
              'branch'
                    command. A branch has correct repositories (and a link) setup up  by  default
              and
                    will be cleaned up automatically after it was submitted back.

              usage:
                  osc linkpac SOURCEPRJ SOURCEPAC DESTPRJ [DESTPAC] Options:
                  -h, --help  show this help message and exit
                  -N, --new-package
                              create a link to a not yet existing package
                  -d, --disable-publish
                              disable publishing of the linked package
                  -f, --force
                              overwrite an existing link file if it is there.
                  -r rev, --revision=rev
                              link the specified revision.
                  -c, --current
                              link fixed against current revision.
                  -C CICOUNT, --cicount=CICOUNT
                              cicount attribute in the link, known values are add,
                              copy, and local, default in buildservice is currently
                              add.

       linktobranch
              Convert a package containing a classic link with patch to a branch

              This  command tells the server to convert a _link with or without a project.diff to
              a branch. This is a full copy with a _link file pointing to the branched place.

              usage:
                  osc linktobranch                    # can be used in checked out package
                  osc linktobranch PROJECT PACKAGE

       list (LL, lL, ll, ls)
              List sources or binaries on the server

              Examples for listing sources:
                 ls                          # list all projects (deprecated)
                 ls /                        # list all projects
                 ls .                        # take PROJECT/PACKAGE from current dir.
                 ls PROJECT                  # list packages in a project
                 ls PROJECT PACKAGE          # list source files of package of a project
                 ls PROJECT PACKAGE <file>   # list <file> if this file exists
                 ls -v PROJECT PACKAGE       # verbosely list source files of package
                 ls -l PROJECT PACKAGE       # verbosely list source files of package
                 ll PROJECT PACKAGE          # verbosely list source files of package
                 LL PROJECT PACKAGE          # verbosely list source files of expanded link

              With --verbose, the following fields will be shown for each item:
                 MD5 hash of file
                 Revision number of the last commit
                 Size (in bytes)
                 Date and time of the last commit

              Examples for listing binaries:
                 ls -b PROJECT               # list all binaries of a project
                 ls -b PROJECT -a ARCH       # list ARCH binaries of a project
                 ls -b PROJECT -r REPO       # list binaries in REPO
                 ls -b PROJECT PACKAGE REPO ARCH

              Usage:
                 list (LL, lL, ll, ls) [PROJECT [PACKAGE]]
                 list (LL, lL, ll, ls) -b [PROJECT [PACKAGE [REPO [ARCH]]]] Options:
                  -h, --help  show this help message and exit
                  -R REVISION, --revision=REVISION
                              specify revision (only for sources)
                  -M, --meta  list meta data files
                  -D, --deleted
                              show only the former deleted projects or packages
                  -l, --long  print extra information
                  -v, --verbose
                              print extra information
                  -u, --unexpand
                              always work with unexpanded (source) packages
                  -e, --expand
                              expand linked package (only for sources)
                  -b, --binaries
                              list built binaries instead of sources
                  -r REPO, --repo=REPO
                              specify repository (only for binaries)
                  -a ARCH, --arch=ARCH
                              specify architecture (only for binaries)

       localbuildlog (lbl)
              Shows the build log of a local buildchroot

              usage:
                  osc lbl [REPOSITORY [ARCH]]
                  osc lbl # show log of newest last local build

              Options:
                  -h, --help  show this help message and exit
                  -s, --strip-time
                              strip leading build time from the log
                  -o OFFSET, --offset=OFFSET
                              get log starting from offset

       lock   Locks a project or package.

              usage:
                 osc lock PROJECT [PACKAGE]

       log    Shows the commit log of a package

              Usage:
                  osc log (inside working copy)
                  osc log remote_project [remote_package]

              Options:
                  -h, --help  show this help message and exit
                  -M, --meta  checkout out meta data instead of sources
                  -D, --deleted
                              work on deleted package
                  --xml       generate output in XML
                  --csv       generate output in CSV (separated by |)
                  -r rev, --revision=rev
                              show log of the specified revision

       maintainer (bugowner)
              Show maintainers according to server side configuration

                  # Search for official maintained sources in OBS instance
                  osc maintainer BINARY <options>
                  osc maintainer -U <user> <options>
                  osc maintainer -G <group> <options>

                  # Lookup via containers
                  osc maintainer <options>
                  osc maintainer PRJ <options>
                  osc maintainer PRJ PKG <options>

              The tool looks up the default responsible person for a certain project or  package.
              When  using  with  an  OBS 2.4 (or later) server it is doing the lookup for a given
              binary according to the server side configuration of default owners.

              The tool is also looking into devel  packages  and  supports  to  fallback  to  the
              project in case a package has no defined maintainer.

              Please  use  "osc  meta  pkg" in case you need to know the definition in a specific
              container.

              PRJ and PKG default to current working-copy path.

              Usage:
                  osc maintainer [ARGS...]

              Options:
                  -h, --help  show this help message and exit
                  -m MESSAGE, --message=MESSAGE
                              Define message as commit entry or request description
                  -r role, --role=role
                              Specify user role
                  -d user, --delete=user
                              delete a maintainer/bugowner (can be specified via
                              --role)
                  -G GROUP, --group=GROUP
                              All official maintained instances for the specified
                              GROUP
                  -U USER, --user=USER
                              All official maintained instances for the specified
                              USER
                  -S user, --set-bugowner-request=user
                              Set the bugowner to specified person via a request (or
                              group via group: prefix)
                  -s user, --set-bugowner=user
                              Set the bugowner to specified person (or group via
                              group: prefix)
                  -A, --all   list all found entries not just the first one
                  -a user, --add=user
                              add a new person for given role ("maintainer" by
                              default)
                  -D devel_project, --devel-project=devel_project
                              define the project where this package is primarily
                              developed
                  -v, --verbose
                              show more information
                  --nodevelproject
                              do not follow a defined devel project (primary project
                              where a package is developed)
                  -e, --email
                              show email addresses instead of user names
                  -B, --bugowner
                              Show only the bugowner if defined, or maintainer
                              otherwise
                  -b, --bugowner-only
                              Show only the bugowner

       maintenancerequest (mr)
              Create a request for starting a maintenance incident.

              [See                      http://doc.opensuse.org/products/draft/OBS/obs-reference-
              guide_draft/cha.obs.maintenance_setup.html for information on this topic.]

              This  command is asking the maintence team to start a maintence incident based on a
              created maintenance update. Please see the "mbranch" command on how to create  such
              a  project  and  the  "patchinfo"  command  how add the required maintenance update
              information.

              usage:
                  osc maintenancerequest [ SOURCEPROJECT  [  SOURCEPACKAGES  RELEASEPROJECT  ]  ]
              Options:
                  -h, --help  show this help message and exit
                  --incident-project=INCIDENT_PROJECT
                              specify incident project to merge in
                  --incident=INCIDENT
                              specify incident number to merge in
                  --cleanup   do remove source project on accept
                  --no-cleanup
                              do not remove source project on accept
                  --release-project=RELEASEPROJECT
                              Specify the release project
                  -m TEXT, --message=TEXT
                              specify message TEXT
                  -a ATTRIBUTE, --attribute=ATTRIBUTE
                              Use this attribute to find default maintenance project
                              (default is OBS:MaintenanceProject)

       man    generates a man page

              usage:
                  osc man

       mbranch (maintained, sm)
              Search or banch multiple instances of a package

              This  command is used for searching all relevant instances of packages and creating
              links of them in one project.  This is esp. used for maintenance  updates.  It  can
              also be used to branch all packages marked before with a given attribute.

              [See      http://en.opensuse.org/openSUSE:Build_Service_Concept_Maintenance     for
              information on this topic.]

              The branched package will live in
                  home:USERNAME:branches:ATTRIBUTE:PACKAGE if nothing else specified.

              usage:
                  osc sm [SOURCEPACKAGE] [-a ATTRIBUTE]
                  osc mbranch [ SOURCEPACKAGE [ TARGETPROJECT ] ] Options:
                  -h, --help  show this help message and exit
                  --nodevelproject
                              do not follow a defined devel project (primary project
                              where a package is developed)
                  --noaccess  Create a hidden project
                  --dryrun    Just simulate the action and report back the result.
                  -u UPDATE_ATTRIBUTE, --update-project-attribute=UPDATE_ATTRIBUTE
                              Use this attribute to find update projects (default is
                              OBS:UpdateProject)
                  -a ATTRIBUTE, --attribute=ATTRIBUTE
                              Use this attribute to find affected packages (default
                              is OBS:Maintained)
                  -c, --checkout
                              Checkout branched package afterwards ('osc bco' is a
                              shorthand for this option)

       meta   Show meta information, or edit it

              Show or edit build service metadata of type <prj|pkg|prjconf|user|pattern>.

              This command displays metadata on buildservice objects like projects, packages,  or
              users.  The type of metadata is specified by the word after "meta", like e.g. "meta
              prj".

              prj denotes metadata of  a  buildservice  project.   prjconf  denotes  the  (build)
              configuration  of a project.  pkg denotes metadata of a buildservice package.  user
              denotes the metadata of a user.  pattern denotes installation patterns defined  for
              a project.

              To  list  patterns,  use 'osc meta pattern PRJ'. An additional argument will be the
              pattern file to view or edit.

              With the --edit switch, the metadata can be edited.  Per  default,  osc  opens  the
              program  specified  by  the  environmental  variable  EDITOR with a temporary file.
              Alternatively, content to be saved can be supplied via the --file  switch.  If  the
              argument  is '-', input is taken from stdin: osc meta prjconf home:user | sed ... |
              osc meta prjconf home:user -F -

              When trying to edit a non-existing resource, it is created implicitly.

              Examples:
                  osc meta prj PRJ
                  osc meta pkg PRJ PKG
                  osc meta pkg PRJ PKG -e

              Usage:
                  osc meta <prj|pkg|prjconf|user|pattern> ARGS...
                  osc meta <prj|pkg|prjconf|user|pattern> -e|--edit ARGS...
                  osc meta <prj|pkg|prjconf|user|pattern> -F|--file ARGS...
                  osc meta pattern --delete PRJ PATTERN
                  osc   meta   attribute   PRJ   [PKG   [SUBPACKAGE]]   [--attribute   ATTRIBUTE]
              [--create|--delete|--set [value_list]] Options:
                  -h, --help  show this help message and exit
                  --delete    delete a pattern or attribute
                  -s ATTRIBUTE_VALUES, --set=ATTRIBUTE_VALUES
                              set attribute values
                  -R, --remove-linking-repositories
                              Try to remove also all repositories building against
                              remove ones.
                  -c, --create
                              create attribute without values
                  -e, --edit  edit metadata
                  -F FILE, --file=FILE
                              read metadata from FILE, instead of opening an editor.
                              '-' denotes standard input.
                  -f, --force
                              force the save operation, allows one to ignores some
                              errors like depending repositories. For prj meta only.
                  --attribute-project
                              include project values, if missing in packages
                  --attribute-defaults
                              include defined attribute defaults
                  -a ATTRIBUTE, --attribute=ATTRIBUTE
                              affect only a given attribute

       mkpac  Create a new package under version control

              usage:
                  osc mkpac new_package

       mv     Move SOURCE file to DEST and keep it under version control

              Usage:
                  osc mv SOURCE DEST

              Options:
                  -h, --help  show this help message and exit
                  -f, --force
                              forces removal of entire package and its files

       my     show waiting work, packages, projects or requests involving yourself

                  Examples:
                      # list all open tasks for me
                      osc my [work]
                      # list packages where I am bugowner
                      osc my pkg -b
                      # list projects where I am maintainer
                      osc my prj -m
                      # list request for all my projects and packages
                      osc my rq
                      # list requests, excluding project 'foo' and 'bar'
                      osc my rq --exclude-project foo,bar
                      # list submitrequests I made
                      osc my sr

              Usage:
                  osc my [ARGS...]

                      where TYPE is one of requests, submitrequests,
                      projects or packages (rq, sr, prj or pkg)

                  Options:
                      -h, --help
                              show this help message and exit
                      --maintained
                              limit search results to packages with maintained
                              attribute set.
                      -v, --verbose
                              verbose listing
                      --exclude-project=EXCLUDE_PROJECT
                              exclude requests for specified project
                      -U USER, --user=USER
                              search for USER instead of yourself
                      -a, --all
                              all involvements
                      -m, --maintainer
                              restrict listing to items where the user is maintainer
                      -b, --bugowner
                              restrict listing to items where the user is bugowner

       patchinfo
              Generate and edit a patchinfo file.

              A  patchinfo  file  describes the packages for an update and the kind of problem it
              solves.

              This command either creates a new _patchinfo or updates an existing one.

              Examples:
                  osc patchinfo
                  osc patchinfo [PROJECT [PATCH_NAME]] Options:
                  -h, --help  show this help message and exit
                  -f, --force
                              force generation of new patchinfo file, do not update
                              existing one.

       pdiff  Quick alias to diff the content of a package with its parent.

              Usage:
                  osc pdiff [--plain|-p] [--nomissing-ok|-n]
                  osc pdiff [--plain|-p] [--nomissing-ok|-n] PKG
                  osc pdiff [--plain|-p] [--nomissing-ok|-n] PRJ PKG

              Options:
                  -h, --help  show this help message and exit
                  -n, --nomissingok
                              fail if the parent package does not exist on the
                              server
                  -p, --plain
                              output the diff in plain (not unified) diff format

       prdiff (projdiff, projectdiff)
              Server-side diff of two projects

              Compares two projects and either summarises or outputs the differences in full.  In
              the second form, a project is compared with one of its branches inside a home:$USER
              project (the branch is treated as NEWPRJ).  The home  branch  is  optional  if  the
              current working directory is a checked out copy of it.

              Usage:
                  osc prdiff [OPTIONS] OLDPRJ NEWPRJ
                  osc prdiff [OPTIONS] [home:$USER:branch:$PRJ]

              Options:
                  -h, --help  show this help message and exit
                  -d, --diffstat
                              show diffstat of differences
                  -u, --unified
                              show full unified diffs of differences
                  -o, --show-not-in-new
                              show packages only in the old project
                  -n, --show-not-in-old
                              show packages only in the new project
                  -i REGEXP, --include=REGEXP
                              only consider packages matching REGEXP
                  -e REGEXP, --exclude=REGEXP
                              skip packages matching REGEXP
                  -r, --requests
                              show open requests for any packages with differences

       prjresults (pr)
              Shows project-wide build results

              Usage:
                  osc prjresults (inside working copy)
                  osc prjresults PROJECT

              Options:
                  -h, --help  show this help message and exit
                  --show-excluded
                              show packages that are excluded in all repos, also
                              hide repos that have only excluded packages
                  -V, --vertical
                              list packages vertically instead horizontally
                  -r REPO, --repo=REPO
                              show results only for specified repo(s)
                  -a ARCH, --arch=ARCH
                              show results only for specified architecture(s)
                  -n EXPR, --name-filter=EXPR
                              show only packages whose names match EXPR
                  -s STATUS, --status-filter=STATUS
                              show only packages with buildstatus STATUS (see
                              legend)
                  --xml       generate output in XML
                  -c, --csv   csv output
                  -q, --hide-legend
                              hide the legend

       pull   merge the changes of the link target into your working copy.

       rdelete
              Delete a project or packages on the server.

              As  a  safety measure, project must be empty (i.e., you need to delete all packages
              first).  Also,  packages  must  have  no  requests  pending  (i.e.,  you  need   to
              accept/revoke  such  requests first).  If you are sure that you want to remove this
              project and all its packages use '--recursive'  switch.   It  may  still  not  work
              because  other  depends  on  it.  If  you want to ignore this as well use '--force'
              switch.

              usage:
                 osc rdelete [-r] [-f] PROJECT [PACKAGE]

              Options:
                  -h, --help  show this help message and exit
                  -m TEXT, --message=TEXT
                              specify log message TEXT
                  -f, --force
                              deletes a project where other depends on
                  -r, --recursive
                              deletes a project with packages inside

       rdiff  Server-side "pretty" diff of two packages

              Compares two packages (three or four arguments) or shows the changes of a specified
              revision of a package (two arguments)

              If no revision is specified the latest revision is used.

              Note  that  this  command  doesn't  return a normal diff (which could be applied as
              patch), but a "pretty" diff, which also compares the content of tarballs.

              usage:
                  osc rdiff OLDPRJ OLDPAC NEWPRJ [NEWPAC]
                  osc rdiff PROJECT PACKAGE Options:
                  -h, --help  show this help message and exit
                  -u, --unexpand
                              diff unexpanded version if sources are linked
                  --missingok
                              do not fail if the source or target project/package
                              does not exist on the server
                  -c rev, --change=rev
                              the change made by revision rev (like -r rev-1:rev).
                              If rev is negative this is like -r rev:rev-1.
                  -p, --plain
                              output the diff in plain (not unified) diff format
                  -r N[:M], --revision=N[:M]
                              revision id, where N = old revision and M = new
                              revision
                  -M, --meta  diff meta data
                  --oldpkg=OLDPKG
                              package to compare against (deprecated, use 3 argument
                              form)
                  --oldprj=OLDPRJ
                              project to compare against (deprecated, use 3 argument
                              form)

       rebuild (rebuildpac)
              Trigger package rebuilds

              Note that it is normally NOT needed to kick off rebuilds like  this,  because  they
              principally  happen  in  a  fully  automatic way, triggered by source check-ins. In
              particular, the order in which packages are built is handled by the build service.

              The arguments REPOSITORY and ARCH can be taken from the first two  columns  of  the
              'osc repos' output.

              usage:
                  osc rebuild [PROJECT [PACKAGE [REPOSITORY [ARCH]]]] Options:
                  -h, --help  show this help message and exit
                  --all       Rebuild all packages of entire project
                  -f, --failed
                              rebuild all failed packages
                  -r REPO, --repo=REPO
                              trigger rebuilds for a specific repository
                  -a ARCH, --arch=ARCH
                              trigger rebuilds for a specific architecture

       release
              Release sources and binaries

              This  command is used to transfer sources and binaries without rebuilding them.  It
              requires defined release targets set to trigger="manual". Please refer the  release
              management chapter in the OBS book for details.

              usage:
                  osc release [ SOURCEPROJECT [ SOURCEPACKAGE ] ]

              Options:
                  -h, --help  show this help message and exit
                  --set-release=RELEASETAG
                              rename binaries during release using this release tag
                  --target-repository=TARGETREPOSITORY
                              Release only to specified repository
                  --target-project=TARGETPROJECT
                              Release only to specified project
                  -r REPO, --repo=REPO
                              Release only binaries from the specified repository

       releaserequest
              Create a request for releasing a maintenance update.

              [See                      http://doc.opensuse.org/products/draft/OBS/obs-reference-
              guide_draft/cha.obs.maintenance_setup.html
               for information on this topic.]

              This command is used by the maintence team  to  start  the  release  process  of  a
              maintenance  update.   This includes usually testing based on the defined reviewers
              of the update project.

              usage:
                  osc releaserequest [ SOURCEPROJECT ]

              Options:
                  -h, --help  show this help message and exit
                  -m TEXT, --message=TEXT
                              specify message TEXT

       remotebuildlog (rbl, rblt, rbuildlog, rbuildlogtail, remotebuildlogtail)
              Shows the build log of a package

              Shows the log file of the build of a package. Can be used to follow the  log  while
              it is being written.

              remotebuildlogtail shows just the tail of the log file.

              usage:
                  osc remotebuildlog project package repository arch
                  or
                  osc remotebuildlog project/package/repository/arch
                  or
                  osc remotebuildlog buildlogurl Options:
                  -h, --help  show this help message and exit
                  -s, --strip-time
                              strip leading build time from the log
                  -o OFFSET, --offset=OFFSET
                              get log starting or ending from the offset
                  -l, --last  Show the last finished log file

       repairlink
              Repair a broken source link

              This command checks out a package with merged source changes. It uses a 3-way merge
              to resolve file conflicts. After reviewing/repairing the merge, use  'osc  resolved
              ...' and 'osc ci' to re-create a working source link.

              usage: * For merging conflicting changes of a checkout package:
                  osc repairlink

              * Check out a package and merge changes:
                  osc repairlink PROJECT PACKAGE

              * Pull conflicting changes from one project into another one:
                  osc repairlink PROJECT PACKAGE INTO_PROJECT [INTO_PACKAGE]

              Options:
                  -h, --help  show this help message and exit
                  -d DIR, --destdir=DIR
                              destination directory

       repairwc
              try to repair an inconsistent working copy

              Examples:
                  osc repairwc <path>

              Note: if <path> is omitted it defaults to '.' (<path> can be
                    a project or package working copy)

              Warning:  This command might delete some files in the storedir (.osc). Please check
              the state of the wc afterwards (via 'osc status').

              Usage:
                  osc repairwc [ARGS...]

              Options:
                  -h, --help  show this help message and exit
                  --force-apiurl
                              ask once for an apiurl and force this apiurl for all
                              inconsistent projects/packages

       repositories (platforms, repos)
              shows repositories configured for a project.
                              It skips repositories by default which are  disabled  for  a  given
              package.

              usage:
                  osc repos
                  osc repos [PROJECT] [PACKAGE]

       repourls
              Shows URLs of .repo files

              Shows  URLs  on  which  to  access the project .repos files (yum-style metadata) on
              download.opensuse.org.

              usage:
                 osc repourls [PROJECT]

       request (review, rq)
              Show or modify requests and reviews

              [See http://en.opensuse.org/openSUSE:Build_Service_Collaboration for information on
              this topic.]

              The 'request' command has the following sub commands:

              "list"  lists  open  requests attached to a project or package or person.  Uses the
              project/package of the current directory if none of -M,  -U  USER,  project/package
              are given.

              "log" will show the history of the given ID

              "show"  will  show the request itself, and generate a diff for review, if used with
              the --diff option. The keyword show can be omitted if the ID is numeric.

              "decline" will change the request state to "declined"

              "reopen" will set the request back to new or review.

              "setincident" will direct "maintenance" requests into specific incidents

              "supersede" will supersede one request with another existing one.

              "revoke" will set the request state to "revoked"

              "accept" will change the request state to "accepted" and will  trigger  the  actual
              submit  process. That would normally be a server-side copy of the source package to
              the target package.

              "checkout" will checkout the request's source package ("submit" requests only).

              "priorize" change the prioritity of a request to  either  "critical",  "important",
              "moderate" or "low"

              The 'review' command has the following sub commands:

              "list" lists open requests that need to be reviewed by the specified user or group

              "add" adds a person or group as reviewer to a request

              "accept" mark the review positive

              "decline" mark the review negative. A negative review will decline the request.

              usage:
                  osc request list [-M] [-U USER] [-s state] [-D DAYS] [-t type] [-B] [PRJ [PKG]]
                  osc request log ID
                  osc request [show] [-d] [-b] ID

                  osc request accept [-m TEXT] ID
                  osc request decline [-m TEXT] ID
                  osc request revoke [-m TEXT] ID
                  osc request reopen [-m TEXT] ID
                  osc request setincident [-m TEXT] ID INCIDENT
                  osc request supersede [-m TEXT] ID SUPERSEDING_ID
                  osc request approvenew [-m TEXT] PROJECT
                  osc request priorize [-m TEXT] ID PRIORITY

                  osc request checkout/co ID
                  osc request clone [-m TEXT] ID

                  osc review show [-d] [-b] ID
                  osc review list [-U USER] [-G GROUP] [-P PROJECT [-p PACKAGE]] [-s state]
                  osc review add [-m TEXT] [-U USER] [-G GROUP] [-P PROJECT [-p PACKAGE]] ID
                  osc review accept [-m TEXT] [-U USER] [-G GROUP] [-P PROJECT [-p PACKAGE]] ID
                  osc review decline [-m TEXT] [-U USER] [-G GROUP] [-P PROJECT [-p PACKAGE]] ID
                  osc review reopen [-m TEXT] [-U USER] [-G GROUP] [-P PROJECT [-p PACKAGE]] ID
                  osc  review  supersede [-m TEXT] [-U USER] [-G GROUP] [-P PROJECT [-p PACKAGE]]
              ID SUPERSEDING_ID

              Options:
                  -h, --help  show this help message and exit
                  --source-buildstatus
                              print the buildstatus of the source package (only
                              works with "show")
                  --involved-projects
                              show all requests for project/packages where USER is
                              involved
                  --exclude-target-project=EXCLUDE_TARGET_PROJECT
                              exclude target project from request list
                  --non-interactive
                              non-interactive review of request
                  --or-revoke
                              For automatisation scripts: accepts (if using with
                              accept argument) a request when it is in new or review
                              state. Or revoke it when it got declined. Otherwise
                              just do nothing.
                  -i, --interactive
                              interactive review of request
                  -e, --edit  edit a submit action
                  -B, --bugowner
                              also show requests about packages where I am bugowner
                  -M, --mine  only show requests created by yourself
                  -b, --brief
                              print output in list view as list subcommand
                  -p PACKAGE, --package=PACKAGE
                              requests or reviews limited for the specified PACKAGE,
                              requires also a PROJECT
                  -P PROJECT, --project=PROJECT
                              requests or reviews limited for the specified PROJECT
                  -G GROUP, --group=GROUP
                              requests or reviews limited for the specified GROUP
                  -U USER, --user=USER
                              requests or reviews limited for the specified USER
                  -D DAYS, --days=DAYS
                              only list requests in state "new" or changed in the
                              last DAYS. [default=0]
                  -s STATE, --state=STATE
                              only list requests in one of the comma separated given
                              states (new/review/accepted/revoked/declined) or "all"
                              [default="declined,new,review", or "all", if no args
                              given]
                  -f, --force
                              enforce state change, can be used to ignore open
                              reviews
                  -a, --all   all states. Same as'-s all'
                  -t TYPE, --type=TYPE
                              limit to requests which contain a given action type
                              (submit/delete/change_devel)
                  -m TEXT, --message=TEXT
                              specify message TEXT
                  --no-devel  Do not attempt to forward to devel project
                  -u, --unified
                              output the diff in the unified diff format
                  -d, --diff  generate a diff

       requestmaintainership     (reqbs,     reqbugownership,      reqmaintainership,      reqms,
       requestbugownership)
              requests to add user as maintainer or bugowner

              usage:
                  osc  requestmaintainership                             #  for  current  user in
              checked out package
                  osc requestmaintainership USER                       # for  specified  user  in
              checked out package
                  osc  requestmaintainership PROJECT                    # for current user if cwd
              is not a checked out package
                  osc requestmaintainership PROJECT PACKAGE            # for current user
                  osc requestmaintainership PROJECT PACKAGE USER       #  request  for  specified
              user
                  osc  requestmaintainership  PROJECT  PACKAGE group:NAME # request for specified
              group

                  osc requestbugownership ...                          # accepts same  parameters
              but uses bugowner role

              Options:
                  -h, --help  show this help message and exit
                  -r role, --role=role
                              specify user role (default: maintainer)
                  -m TEXT, --message=TEXT
                              specify message TEXT

       resolved
              Remove 'conflicted' state on working copy files

              If  an  upstream  change  can't  be  merged  automatically,  a  file is put into in
              'conflicted' ('C') state. Within  the  file,  conflicts  are  marked  with  special
              <<<<<<< as well as ======== and >>>>>>> lines.

              After  manually  resolving  all  conflicting  parts, use this command to remove the
              'conflicted' state.

              Note:  this subcommand does not semantically resolve conflicts or  remove  conflict
              markers;  it  merely removes the conflict-related artifact files and allows PATH to
              be committed again.

              usage:
                  osc resolved FILE [FILE...]

       restartbuild (abortbuild)
              Restart the build of a certain project or package

              usage:
                  osc restartbuild [PROJECT [PACKAGE [REPOSITORY [ARCH]]]] Options:
                  -h, --help  show this help message and exit
                  --all       Restart all running builds of entire project
                  -r REPO, --repo=REPO
                              Restart builds for a specific repository
                  -a ARCH, --arch=ARCH
                              Restart builds for a specific architecture

       results (r)
              Shows the build results of a package or project

              Usage:
                  osc results                 # (inside working copy of PRJ or PKG)
                  osc results PROJECT [PACKAGE]

              Options:
                  -h, --help  show this help message and exit
                  --format=FORMAT
                              format string for csv output
                  --csv       generate output in CSV format
                  --xml       generate output in XML (former results_meta)
                  -w, --watch
                              watch the results until all finished building
                  -v, --verbose
                              more verbose output
                  -a ARCH, --arch=ARCH
                              Show results only for specified architecture(s)
                  -r REPO, --repo=REPO
                              Show results only for specified repo(s)
                  -l, --last-build
                              show last build results (succeeded/failed/unknown)

       revert Restore changed files or the entire working copy.

              Examples:
                  osc revert <modified file(s)>
                  ose revert .  Note: this only works for package working copies

              Usage:
                  osc revert [FILES...]

       rremove
              Remove source files from selected package

              Usage:
                  osc rremove PROJECT PACKAGE [FILES...]

              Options:
                  -h, --help  show this help message and exit
                  -f, --force
                              Don't ask and delete files

       search (bse, se)
              Search for a project and/or package.

              If no option is specified osc will search for projects and packages which  contains
              the 'search term' in their name, title or description.

              usage:
                  osc search 'search term' <options>
                  osc bse ...                         ('osc search --binary')
                  osc se 'perl(Foo::Bar)'             ('osc --package perl-Foo-Bar') Options:
                  -h, --help  show this help message and exit
                  --binaryversion=VERSION
                              search for binary with specified version (implies
                              --binary)
                  -B PROJECT, --baseproject=PROJECT
                              search packages built for PROJECT (implies --binary)
                  --binary    search binary packages
                  --csv       generate output in CSV (separated by |)
                  -M, --mine  shorthand for --bugowner --package
                  --maintained
                              OBSOLETE: please use maintained command instead.
                  -m, --maintainer
                              as -i, but only maintainer
                  -b, --bugowner
                              as -i, but only bugowner
                  -i, --involved
                              show projects/packages where given person (or myself)
                              is involved as bugowner or maintainer
                              [[{group|person}/]<name>] default: person
                  -V, --version
                              show package version, revision, and srcmd5. CAUTION:
                              This is slow and unreliable
                  -v, --verbose
                              show more information
                  -a ATTRIBUTE, --limit-to-attribute=ATTRIBUTE
                              match only when given attribute exists in meta data
                  --description
                              search for matches in the 'description' element
                  --title     search for matches in the 'title' element
                  --project   search for a project
                  --package   search for a package
                  -s, --substring
                              Show also results where the search term is a sub
                              string, slower search
                  -e, --exact
                              show only exact matches, this is default now
                  --repos-baseurl
                              show base URLs of download repositories

       service
              Handle source services

              Source services can be used to modify sources like downloading files, verify files,
              generating files or modify existing files.

              usage:
                  osc service COMMAND (inside working copy)
                  osc service run [SOURCE_SERVICE]
                  osc service disabledrun
                  osc service remoterun [PROJECT PACKAGE]

                  COMMAND can be:
                  run         r  run defined services locally, it takes an optional parameter  to
              run only a
                                 specified  source service. In case parameters exist for this one
              in _service file
                                 they are used.
                  disabledrun dr run disabled or server side  only  services  locally  and  store
              files as local created
                  remoterun   rr trigger a re-run on the server side

       setdevelproject (sdp)
              Set the devel project / package of a package

              Examples:
                  osc setdevelproject [PRJ PKG] DEVPRJ [DEVPKG] Options:
                  -h, --help  show this help message and exit
                  -u, --unset
                              remove devel project

       setlinkrev
              Updates a revision number in a source link.

              This  command  adds  or  updates a specified revision number in a source link.  The
              current revision of the source is used, if no revision number is specified.

              usage:
                  osc setlinkrev
                  osc setlinkrev PROJECT [PACKAGE] Options:
                  -h, --help  show this help message and exit
                  -u, --unset
                              remove revision in link, it will point always to
                              latest revision
                  -R, --use-plain-revision
                              Do not expand revision the specified or latest rev
                  -r rev, --revision=rev
                              use the specified revision.

       signkey
              Manage Project Signing Key

              osc  signkey  [--create|--delete|--extend]  <PROJECT>  osc  signkey  [--notraverse]
              <PROJECT>

              This command is for managing gpg keys. It shows the public key by default. There is
              no way to download or upload the private part of a key by design.

              However you can create a new own key. You may want to consider to sign  the  public
              key with your own existing key.

              If  a  project  has no key, the key from upper level project will be used (eg. when
              dropping "KDE:KDE4:Community" key, the one from "KDE:KDE4" will be used).

              WARNING: THE OLD KEY WILL NOT BE RESTORABLE WHEN USING DELETE OR CREATE

              Usage:
                  osc signkey [ARGS...]

              Options:
                  -h, --help  show this help message and exit
                  --sslcert   fetch SSL certificate instead of GPG key
                  --notraverse
                              don' traverse projects upwards to find key
                  --delete    delete the gpg signing key in this project
                  --extend    extend expiration date of the gpg public key for this
                              project
                  --create    create new gpg signing key for this project

       status (st)
              Show status of files in working copy

              Show the status of files in a local working copy,  indicating  whether  files  have
              been changed locally, deleted, added, ...

              The  first  column  in  the output specifies the status and is one of the following
              characters:
                ' ' no modifications
                'A' Added
                'C' Conflicted
                'D' Deleted
                'M' Modified
                '?' item is not under version control
                '!' item is missing (removed by non-osc command) or incomplete
                'S' item is skipped (item exceeds a file size limit or is _service:* file)
                'F' Frozen (use "osc pull" to merge conflicts) (package-only state)

              examples:
                osc st
                osc st <directory>
                osc st file1 file2 ...

              usage:
                  osc status [OPTS] [PATH...]  Options:
                  -h, --help  show this help message and exit
                  -e, --show-excluded
                              also show files which are excluded by the
                              "exclude_glob" config option
                  -v, --verbose
                              print extra information
                  -q, --quiet
                              print as little as possible

       submitrequest (sr, submitpac, submitreq)
              Create request to submit source into another Project

              [See http://en.opensuse.org/openSUSE:Build_Service_Collaboration for information on
              this topic.]

              See the "request" command for showing and modifing existing requests.

              usage:
                  osc submitreq [OPTIONS]
                  osc submitreq [OPTIONS] DESTPRJ [DESTPKG]
                  osc submitreq [OPTIONS] SOURCEPRJ SOURCEPKG DESTPRJ [DESTPKG]

                  osc submitpac ... is a shorthand for osc submitreq --cleanup ...

              Options:
                  -h, --help  show this help message and exit
                  --yes       proceed without asking.
                  -d, --diff  show diff only instead of creating the actual request
                  --update-link
                              This transfers the source including the _link file.
                  --no-update
                              never touch source package on accept (will break
                              source links)
                  --no-cleanup
                              never remove source package on accept, but update its
                              content
                  --cleanup   remove package if submission gets accepted (default
                              for home:<id>:branch projects)
                  --seperate-requests
                              Create multiple request instead of a single one (when
                              command is used for entire project)
                  --nodevelproject
                              do not follow a defined devel project (primary project
                              where a package is developed)
                  -s SUPERSEDE, --supersede=SUPERSEDE
                              Superseding another request by this one
                  -r REV, --revision=REV
                              specify a certain source revision ID (the md5 sum) for
                              the source package
                  -m TEXT, --message=TEXT
                              specify message TEXT

       token  Show and manage authentication token

              Authentication  token  can  be  used  to  run  specific  commands  without  sending
              credentials.

              Usage:
                  osc token
                  osc token --create [<PROJECT> <PACKAGE>]
                  osc token --delete <TOKENID>
                  osc token --trigger <TOKENID> Options:
                  -h, --help  show this help message and exit
                  -t TOKENID, --trigger=TOKENID
                              Trigger the action of a token
                  -d TOKENID, --delete=TOKENID
                              Create a new token
                  -c, --create
                              Create a new token

       triggerreason (tr)
              Show reason why a package got triggered to build

              The server decides when a package needs to get  rebuild,  this  command  shows  the
              detailed  reason  for  a  package. A brief reason is also stored in the jobhistory,
              which can be accessed via "osc jobhistory".

              Trigger reasons might be:
                - new build (never build yet or rebuild manually forced)
                - source change (eg. on updating sources)
                - meta change (packages which are used for building have changed)
                - rebuild count sync (In case that it is configured to sync release numbers)

              usage in package or project directory:
                  osc reason REPOSITORY ARCH
                  osc reason PROJECT PACKAGE REPOSITORY ARCH

       undelete
              Restores a deleted project or package on the server.

              The server restores  a  package  including  the  sources  and  meta  configuration.
              Binaries remain to be lost and will be rebuild.

              usage:
                 osc undelete PROJECT
                 osc undelete PROJECT PACKAGE [PACKAGE ...]

              Options:
                  -h, --help  show this help message and exit
                  -m TEXT, --message=TEXT
                              specify log message TEXT

       unlock Unlocks a project or package

              Unlocks a locked project or package. A comment is required.

              usage:
                 osc unlock PROJECT [PACKAGE]

              Options:
                  -h, --help  show this help message and exit
                  -m TEXT, --message=TEXT
                              specify log message TEXT

       update (up)
              Update a working copy

              examples:

              1. osc up
                      If the current working directory is a package, update it.
                      If the directory is a project directory, update all contained
                      packages, AND check out newly added packages.

                      To update only checked out packages, without checking out new
                      ones, you might want to use "osc up *" from within the project
                      dir.

              2. osc up PAC
                      Update the packages specified by the path argument(s)

              When  --expand-link is used with source link packages, the expanded sources will be
              checked out. Without this option, the _link file and patches will be  checked  out.
              The  option  --unexpand-link  can be used to switch back to the "raw" source with a
              _link file plus patch(es).

              Usage:
                  osc update [ARGS...]

              Options:
                  -h, --help  show this help message and exit
                  -l limit_size, --limit-size=limit_size
                              Skip all files with a given size
                  -S, --server-side-source-service-files
                              Use server side generated sources instead of local
                              generation.
                  -s, --source-service-files
                              Run local source services after update.
                  -e, --expand-link
                              if a package is a link, update to the expanded sources
                  -u, --unexpand-link
                              if a package is an expanded link, update to the raw
                              _link file
                  -r REV, --revision=REV
                              update to specified revision (this option will be
                              ignored if you are going to update the complete
                              project or more than one package)

       updatepacmetafromspec (metafromspec, updatepkgmetafromspec)
              Update package meta information from a specfile

              ARG, if specified, is a package working copy.

              Usage:
                  osc updatepacmetafromspec [ARGS...]

              Options:
                  -h, --help  show this help message and exit
                  --specfile=FILE
                              Path to specfile. (if you pass more than working copy
                              this option is ignored)

       vc     Edit the changes file

              osc  vc  [-m  MESSAGE|-e]  [filename[.changes]|path  [file_with_comment]]   If   no
              <filename>  is  given, exactly one *.changes or *.spec file has to be in the cwd or
              in path.

              The email address used in .changes file is  read  from  BuildService  instance,  or
              should  be  defined  in  ~/.oscrc  [https://api.opensuse.org/]  user = login pass =
              password email = user@defined.email

              or can be specified via mailaddr environment variable.

              Usage:
                  osc vc [ARGS...]

              Options:
                  -h, --help  show this help message and exit
                  -e, --just-edit
                              just open changes (cannot be used with -m)
                  -F FILE, --file=FILE
                              read changes message from FILE (do not open an editor)
                  -m MESSAGE, --message=MESSAGE
                              add MESSAGE to changes (do not open an editor)

       whois (user, who)
              Show fullname and email of a buildservice user

              Usage:
                  osc whois [USERNAMES...]

       wipebinaries
              Delete all binary packages of a certain project/package

              With the optional argument <package> you can specify a  certain  package  otherwise
              all binary packages in the project will be deleted.

              usage:
                  osc wipebinaries OPTS                       # works in checked out project dir
                  osc wipebinaries OPTS PROJECT [PACKAGE] Options:
                  -h, --help  show this help message and exit
                  --all       Delete all binaries regardless of the package status
                              (previously default)
                  --unresolvable
                              Delete all binaries of packages which have dependency
                              errors
                  --broken    Delete all binaries of packages for which the package
                              source is bad
                  --build-failed
                              Delete all binaries of packages for which the build
                              failed
                  --build-disabled
                              Delete all binaries of packages for which the build is
                              disabled
                  -r REPO, --repo=REPO
                              Delete all binary packages for a specific repository
                  -a ARCH, --arch=ARCH
                              Delete all binary packages for a specific architecture

   GLOBAL OPTIONS
       Options:
           --version           show program's version number and exit
           -h, --help          show this help message and exit
           --debugger          jump into the debugger before executing anything
           --post-mortem       jump into the debugger in case of errors
           -t, --traceback     print call trace in case of errors
           -H, --http-debug    debug HTTP traffic (filters some headers)
           --http-full-debug   debug HTTP traffic (filters no headers)
           -d, --debug         print info useful for debugging
           -A URL/alias, --apiurl=URL/alias
                               specify URL to access API server at or an alias
           -c FILE, --config=FILE
                               specify alternate configuration file
           --no-keyring        disable usage of desktop keyring system
           --no-gnome-keyring  disable usage of GNOME Keyring
           -v, --verbose       increase verbosity
           -q, --quiet         be quiet, not verbose

SEE ALSO

       Type 'osc help <subcommand>' for more detailed help on a specific subcommand.

       For additional information, see
        * http://en.opensuse.org/openSUSE:Build_Service_Tutorial
        * http://en.opensuse.org/openSUSE:OSC

       You can modify osc commands, or roll your own, via the plugin API:
        * http://en.opensuse.org/openSUSE:OSC_plugins

AUTHOR

       osc was written by several authors. This man page is automatically generated.