oracular (1) osc.1.gz

Provided by: osc_1.8.3-1_all bug

NAME

       osc - openSUSE build service command-line tool

SYNOPSIS

       osc [global opts] <command> [--help] [opts] [args]

OPTIONS

       -v, --verbose
              increase verbosity (conflicts with --quiet)

       -q, --quiet
              be quiet, not verbose (conflicts with --verbose)

       --debug
              print info useful for debugging

       --debugger
              jump into the debugger before executing anything

       --post-mortem
              jump into the debugger in case of errors

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

       -A URL, --apiurl URL
              Open Build Service API URL or a configured alias

       --config FILE
              specify alternate configuration file

       --setopt KEY=VALUE
              set a config option for the current program run

       --no-keyring
              disable usage of desktop keyring system

COMMANDS

   osc person
       Manage persons

       usage: osc [global opts] person [-h] {register,search} ...

   osc person register
       Register a new person (user)

       usage: osc [global opts] register [-h] --login LOGIN --realname REALNAME
                                         --email EMAIL [--password PASSWORD]
                                         [--note NOTE] [--state STATE]

       options:

              --login LOGIN
                     Login.

              --realname REALNAME
                     Real name of the person.

              --email EMAIL
                     Email address.

              --password PASSWORD
                     Password. An interactive prompt is shown if password is not specified.

              --note NOTE
                     Any notes about the person.

              --state STATE
                     State of the account. Defaults to 'unconfirmed'.

   osc person search
       Search a person (user)

       usage: osc [global opts] search [-h] [--login LOGIN] [--login-contains SUBSTR]
                                       [--realname-contains SUBSTR] [--email EMAIL]
                                       [--email-contains SUBSTR]

       options:

              --login LOGIN
                     Search by a login.

              --login-contains SUBSTR
                     Search by a substring in a login.

              --realname-contains SUBSTR
                     Search by a substring in a realname.

              --email EMAIL
                     Search by an email address.

              --email-contains SUBSTR
                     Search by a substring in an email address.

   osc repo
       Manage repositories in project meta

       usage: osc [global opts] repo [-h] {add,list,ls,remove,rm} ...

   osc repo add
       Add a repository to project meta

       usage: osc [global opts] add [-h] --repo NAME --arch [ARCH] --path
                                    [PROJECT/REPO] [--disable-publish] [--yes]
                                    project

       arguments:

              project
                     Name of the project

       options:

              --repo NAME
                     Name of the repository we're adding

              --arch [ARCH]
                     Architecture of the repository. Can be specified multiple times.

              --path [PROJECT/REPO]
                     Path associated to the repository. Format is PROJECT/REPO. Can be specified multiple times.

              --disable-publish
                     Disable publishing the added repository

              --yes  Proceed without asking

   osc repo list (ls)
       List repositories in project meta

       usage: osc [global opts] list [-h] project

       arguments:

              project
                     Name of the project

   osc repo remove (rm)
       Remove repositories from project meta

       usage: osc [global opts] remove [-h] --repo [NAME] [--yes] project

       arguments:

              project
                     Name of the project

       options:

              --repo [NAME]
                     Name of the repository we're removing. Can be specified multiple times.

              --yes  Proceed without asking

   osc add
       Mark files to be added upon the next commit

       usage: osc [global opts] add [-h] [-f]

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

       options:

              -f, --force
                     add files even if they are excluded by the exclude_glob config option

   osc addchannels
       Add channels to project

       usage: osc [global opts] addchannels [-h] [-s] [-e]

       The  command  adds all channels which are defined to be used for a given source package.  The source link
       target is used to lookup the channels. The command can be used for a certain package or for  all  in  the
       specified project.

       In case no channel is defined the operation is just returning.

       Examples:
           osc addchannels [PROJECT [PACKAGE]]

       options:

              -s, --skip-disabled
                     Skip disabled channels. Otherwise the source gets added, but not the repositories.

              -e, --enable-all
                     Enable all added channels including the ones disabled by default.

   osc addcontainers
       Add maintained containers for a give package

       usage: osc [global opts] addcontainers [-h] [--extend-package-names]

       The  command  adds  all containers which are marked as maintained and contain an rpm originating from the
       specified source package.

       Examples:
           osc addcontainers [PROJECT PACKAGE]

       options:

              --extend-package-names
                     Extend packages names with project name as suffix

   osc addremove (ar)
       Adds new files, removes disappeared files

       usage: osc [global opts] addremove [-h] [-r]

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

       ARG, if specified, is a package working copy.

       options:

              -r, --recursive
                     If CWD is a project dir then scan all package dirs as well

   osc aggregatepac
       "Aggregate" a package to another package

       usage: osc [global opts] aggregatepac [-h] [--nosources]
                                             [-m SRC=TARGET[,SRC=TARGET]] [-d]

       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[:FLAVOR] DESTPRJ [DESTPAC]

       options:

              --nosources
                     ignore source packages when copying build results to destination project

              -m SRC=TARGET[,SRC=TARGET], --map-repo SRC=TARGET[,SRC=TARGET]
                     Allows repository mapping(s) to be given as SRC=TARGET[,SRC=TARGET]

              -d, --disable-publish
                     disable publishing of the aggregated package

   osc api
       Issue an arbitrary request to the API

       usage: osc [global opts] api [-h] [-X HTTP_METHOD] [-e] [-d STRING] [-T FILE]
                                    [-a NAME STRING NAME STRING]
                                    url

       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

       arguments:

              url    either URL '/path' or full URL with 'scheme://hostname/path'

       options:

              -X HTTP_METHOD, -m HTTP_METHOD, --method HTTP_METHOD
                     specify HTTP method to use (HEAD|GET|PUT|DELETE|POST)

              -e, --edit
                     GET, edit and PUT the location

              -d STRING, --data STRING
                     specify string data for e.g. POST

              -T FILE, -f FILE, --file FILE
                     specify filename to upload, uses PUT mode by default

              -a NAME STRING NAME STRING, --add-header NAME STRING NAME STRING
                     add the specified header to the request

   osc branch (getpac, bco, branchco)
       Branch a package

       usage: osc [global opts] branch [-h] [--nodevelproject] [-c] [-f]
                                       [--add-repositories] [--extend-package-names]
                                       [--noaccess] [-m TEXT] [-M] [-N] [-r rev]
                                       [--linkrev linkrev]
                                       [--add-repositories-block add_repositories_block]
                                       [--add-repositories-rebuild add_repositories_rebuild]
                                       [--disable-build]

       [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
           %(getpac_default_project)s  (list  of  projects from oscrc:getpac_default_project) if nothing else is
       specfied on the command line.

       In case of branch errors, where the source has currently merge conflicts use --linkrev=base option.

       usage:
           osc branch
           osc branch SOURCEPROJECT SOURCEPACKAGE
           osc branch SOURCEPROJECT SOURCEPACKAGE TARGETPROJECT|.
           osc branch SOURCEPROJECT SOURCEPACKAGE TARGETPROJECT|. TARGETPACKAGE
           osc getpac SOURCEPACKAGE
           osc bco ...

       options:

              --nodevelproject
                     do not follow a defined devel project (primary project where a package is developed)

              -c, --checkout
                     Checkout branched package afterwards using "co -e -S"('osc bco' is  a  shorthand  for  this
                     option)

              -f, --force
                     force branch, overwrite target

              --add-repositories
                     Add repositories to target project (happens by default when project is new)

              --extend-package-names
                     Extend packages names with project name as suffix

              --noaccess
                     Create a hidden project

              -m TEXT, --message TEXT
                     specify message TEXT

              -M, --maintenance
                     Create project and package in maintenance mode

              -N, --new-package
                     create a branch pointing to a not yet existing package

              -r rev, --revision rev
                     branch against a specific revision

              --linkrev linkrev
                     specify the used revision in the link target.

              --add-repositories-block add_repositories_block
                     specify the used block strategy for new repositories

              --add-repositories-rebuild add_repositories_rebuild
                     specify the used rebuild strategy for new repositories

              --disable-build
                     disable building of the branched package

   osc browse
       Opens browser

       usage: osc [global opts] browse [-h]

       usage:
          osc browse [PROJECT [PACKAGE]]
          osc browse [REQUEST_ID]

   osc build (wipe, shell, chroot)
       Build a package on your local machine

       usage: osc [global opts] build [-h] [--clean] [-o] [-l] [--no-changelog]
                                      [--rsync-src RSYNCSRCPATH]
                                      [--rsync-dest RSYNCDESTPATH]
                                      [--overlay OVERLAY] [--noinit] [--nochecks]
                                      [--no-verify] [--nodebugpackages]
                                      [--skip-local-service-run] [-p DIR] [-k DIR]
                                      [-M FLAVOR] [-x PAC] [-X FILE] [--root ROOT]
                                      [-j N] [-t N] [--icecream N] [--ccache]
                                      [--pkg-ccache /path/to/_ccache.tar] [--sccache]
                                      [--sccache-uri redis://127.0.0.1:6389]
                                      [--with X] [--without X] [--define 'X Y']
                                      [--build-opt OPT] [--buildtool-opt OPT]
                                      [--userootforbuild]
                                      [--build-uid uid:gid|"caller"]
                                      [--local-package] [--stage STAGE]
                                      [--linksources] [--vm-memory MEMORY]
                                      [--vm-disk-size DISKSIZE] [--vm-type TYPE]
                                      [--vm-telnet TELNET] [--target TARGET]
                                      [--alternative-project PROJECT] [-d]
                                      [--disable-debuginfo] [-b] [--release N]
                                      [--disable-cpio-bulk-download]
                                      [--download-api-only] [--oldpackages DIR]
                                      [--verbose-mode MODE] [--shell-after-fail]
                                      [--shell-cmd COMMAND] [-f] [--host HOST]
                                      [--trust-all-projects] [--nopreinstallimage]
                                      [--just-print-buildroot]

       The command works from a package checkout (local changes are fine).

       You  can use `osc repos` to look up REPOSITORY and ARCH arguments. If they are not set, `osc` choses from
       configured repos in this priority:
         1. `build_repository` mentioned in config file
         2. "standard"
         3. "openSUSE_Factory"
         4. "openSUSE_Tumbleweed"
         5. last repo from the sorted list

       BUILD_DESCR is either a RPM spec file, or a Debian dsc file.

       The command honors 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 use the --alternative-project <alternative-project> option. Example:
           osc build [OPTS] --alternative-project openSUSE:10.3 standard i586 BUILD_DESCR

       usage:
           osc build [OPTS]                      # will try to guess a build environement
           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)

       For debugging after a build you can jump into the build environment:
           osc shell [OPTS] REPOSITORY ARCH

       Run a single command inside of the build environment:
           osc shell --shell-cmd=COMMAND [OPTS] REPOSITORY ARCH

       Useful `shell` OPTS
           --noinit             # for faster run
           --shell-cmd=COMMAND
           --shell-after-fail
           --extra-pkgs=PACKAGE # install additional packages

       To clean up the build environment run
           osc wipe [OPTS]
           osc wipe [OPTS] REPOSITORY ARCH

       If you've set the used VM type in oscrc, it can be also overridden here

           --vm-type=chroot     # for faster, but uncleaner and unsecure build
           --vm-type=kvm        # for clean and secure build
           --vm-type=qemu       # for slow cross architecture build using system emulator

       #  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:

              --clean
                     Delete old build root before initializing it

              -o, --offline
                     Start with cached prjconf and packages without contacting the api server

              -l, --preload
                     Preload all files into the cache for offline operation

              --no-changelog
                     don't update the package changelog from a changes file

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

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

              --overlay OVERLAY
                     Copy overlay filesystem to buildroot after installing all RPMs .

              --noinit, --no-init
                     Skip initialization of build root and start with build immediately.

              --nochecks, --no-checks
                     Do not run build checks on the resulting packages.

              --no-verify, --noverify
                     Skip  signature  verification  (via pgp keys) of packages used for build. (Global config in
                     oscrc: no_verify)

              --nodebugpackages, --no-debug-packages
                     Skip  installation  of  additional  debug   packages   for   CLI   builds   (specified   in
                     obs:cli_debug_packages in project metadata)

              --skip-local-service-run, --noservice, --no-service
                     Skip run of local source services as specified in _service file.

              -p DIR, --prefer-pkgs DIR
                     Prefer packages from this directory when installing the build-root

              -k DIR, --keep-pkgs DIR
                     Save built packages into this directory

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavor of a multibuild package.

              -x PAC, --extra-pkgs PAC
                     Add this package when installing the build-root

              -X FILE, --extra-pkgs-from FILE
                     Add packages listed in this file when installing the build-root

              --root ROOT
                     Build in specified directory

              -j N, --jobs N
                     Compile with N jobs

              -t N, --threads N
                     Compile with N threads

              --icecream N
                     use N parallel build jobs with icecream

              --ccache
                     use ccache to speed up rebuilds

              --pkg-ccache /path/to/_ccache.tar
                     path to an existing uncompressed archive ccache. Using this option implies --ccache

              --sccache
                     use sccache to speed up rebuilds. Conflicts with --cache

              --sccache-uri redis://127.0.0.1:6389
                     Optional remote URI for sccache storage. Implies --sccache.

              --with X
                     enable feature X for build

              --without X
                     disable feature X for build

              --define 'X Y'
                     define macro X with value Y

              --build-opt OPT
                     pass option OPT to the build command

              --buildtool-opt OPT
                     pass option OPT to the build tool command (rpmbuild), for example:
                       * don't clean build environment after a successful build:
                         --buildtool-opt=--noclean

              --userootforbuild, --login-as-root
                     Run  build or shell as root. The default is to build as unprivileged user. Note that a line
                     "# norootforbuild" in the spec file will invalidate this option.

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

              --local-package
                     build a package which does not exist on the server

              --stage STAGE
                     runs  a  specific  stage,  default  is  "a"  for  all. Append a trailing "="to only run the
                     specified stage. Append a trailing "+" to runthe specified  stage  and  all  stages  coming
                     after it. With nosuffix, stages up to and included the specified stage are run.

              --linksources
                     use hard links instead of a deep copied source

              --vm-memory MEMORY
                     amount of memory for VM defined in MB

              --vm-disk-size DISKSIZE
                     size for newly created disk image in MB

              --vm-type TYPE
                     use VM type TYPE (e.g. kvm)

              --vm-telnet TELNET
                     Launch a telnet server inside of VM build

              --target TARGET
                     define target platform

              --alternative-project PROJECT
                     specify the build target project

              -d, --debuginfo
                     also build debuginfo sub-packages

              --disable-debuginfo
                     disable build of debuginfo packages

              -b, --baselibs
                     Create -32bit/-64bit/-x86 rpms for other architectures

              --release N
                     set release number of the package to N

              --disable-cpio-bulk-download
                     disable downloading packages as cpio archive from api

              --download-api-only
                     only fetch packages from the api

              --oldpackages DIR
                     take previous build from DIR (special values: _self, _link)

              --verbose-mode MODE
                     set verbose mode of the "build" program, arguments can be "all" or "vm"

              --shell-after-fail
                     run a shell if the build tool fails

              --shell-cmd COMMAND
                     run specified command instead of bash

              -f, --force
                     Do not ask for confirmation to wipe

              --host HOST
                     perform the build on a remote server - user@server:~/remote/directory

              --trust-all-projects
                     trust packages from all projects

              --nopreinstallimage, --no-preinstallimage
                     Do not use preinstall images for creating the build root.

              --just-print-buildroot
                     Print build root path and exit.

   osc buildconfig
       Shows the build config

       usage: osc [global opts] buildconfig [-h]

       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

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

   osc buildhistory (buildhist)
       Shows the build history of a package

       usage: osc [global opts] buildhistory [-h] [--csv] [-l limit] [-M FLAVOR]

       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[:FLAVOR] REPOSITORY ARCHITECTURE

       options:

              --csv  generate output in CSV (separated by |)

              -l limit, --limit limit
                     for setting the number of results

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavor of a multibuild package.

   osc buildinfo
       Shows the build info

       usage: osc [global opts] buildinfo [-h] [--alternative-project PROJECT] [-d]
                                          [-M FLAVOR] [-x PAC] [-p DIR]
                                          [--nodebugpackages]

       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_repository'  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[:FLAVOR] REPOSITORY ARCH [BUILD_DESCR]

       options:

              --alternative-project PROJECT
                     specify the build target project

              -d, --debug
                     verbose output of build dependencies

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavor of a multibuild package.

              -x PAC, --extra-pkgs PAC
                     Add this package when computing the buildinfo

              -p DIR, --prefer-pkgs DIR
                     Prefer packages from this directory when installing the build-root

              --nodebugpackages, --no-debug-packages
                     Skip   installation   of   additional   debug   packages   for  CLI  builds  (specified  in
                     obs:cli_debug_packages in project metadata)

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

       usage: osc [global opts] buildlog [-h] [-l] [--lastsucceeded] [-M FLAVOR]
                                         [-o OFFSET] [-s]

       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.

       buildlog [REPOSITORY ARCH | BUILDLOGURL]

       options:

              -l, --last
                     Show the last finished log file

              --lastsucceeded, --last-succeeded
                     Show the last succeeded log file

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavor of a multibuild package.

              -o OFFSET, --offset OFFSET
                     get log start or end from the offset

              -s, --strip-time
                     strip leading build time from the log

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

       usage: osc [global opts] cat [-h] [-r rev] [-e] [-u] [-D] [-M]

       Examples:
           osc cat file
           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

           osc less file
           osc less project package file

           osc blame file
           osc blame project package file

       options:

              -r rev, --revision rev
                     print out the specified revision

              -e, --expand
                     (default) force expansion of linked packages.

              -u, --unexpand
                     always work with unexpanded packages.

              -D, --deleted
                     access file in a deleted package

              -M, --meta
                     list meta data files

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

       usage: osc [global opts] changedevelrequest [-h] [-m TEXT]

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

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

       usage:
           osc changedevelrequest PROJECT PACKAGE DEVEL_PROJECT [DEVEL_PACKAGE]

       options:

              -m TEXT, --message TEXT
                     specify message TEXT

   osc checkconstraints
       Check the constraints and view compliant workers

       usage: osc [global opts] checkconstraints [-h] [--ignore-file] [-M FLAVOR]

       Checks the constraints for compliant workers.

       usage:
           remote request:
               osc checkconstraints [OPTS] PROJECT PACKAGE REPOSITORY ARCH [CONSTRAINTSFILE]

           in a package working copy:
               osc checkconstraints [OPTS] REPOSITORY ARCH [CONSTRAINTSFILE]
               osc checkconstraints [OPTS] CONSTRAINTSFILE
               osc checkconstraints [OPTS]

       options:

              --ignore-file
                     ignore _constraints file and only check project constraints

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavor of a multibuild package.

   osc checkout (co)
       Check out content from the repository

       usage: osc [global opts] checkout [-h] [-r rev] [-e] [-D] [-u] [-M] [-c]
                                         [-o outdir] [-s] [-S] [-l limit_size]

       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}\n' PACKAGE
              osc co obs://API/PROJECT/PLATFORM/REVISION-PACKAGE

       options:

              -r rev, --revision rev
                     checkout  the specified revision. NOTE: if you checkout the complete project this option is
                     ignored!

              -e, --expand-link
                     if a package is a link, check out the  expanded  sources  (no-op,  since  this  became  the
                     default)

              -D, --deleted
                     checkout an already deleted package. No meta information

              -u, --unexpand-link
                     if a package is a link, check out the _link file instead of the expanded sources

              -M, --meta
                     checkout out meta data instead of sources

              -c, --current-dir
                     place PACKAGE folder in the current directory instead of a PROJECT/PACKAGE directory

              -o outdir, --output-dir outdir
                     place package in the specified directory instead of a PROJECT/PACKAGE directory

              -s, --source-service-files
                     Run source services.

              -S, --server-side-source-service-files
                     Use server side generated sources instead of local generation.

              -l limit_size, --limit-size limit_size
                     Skip all files with a given size

   osc clean
       Removes all untracked files from the package working copy

       usage: osc [global opts] clean [-h] [-n]

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

       options:

              -n, --dry-run
                     print the results without actually removing a file

   osc cleanassets (ca)
       Clean all previous downloaded assets

       usage: osc [global opts] cleanassets [-h]

       This is useful to prepare a new git commit.

   osc comment
       List / create / delete comments

       usage: osc [global opts] comment [-h] [-c COMMENT] [-p PARENT]

       On create:
           If -p is given a reply to the ID is created. Otherwise
           a toplevel comment is created.
           If -c is not given the default editor will be opened and
           you can type your comment

       usage:
           osc comment list package PROJECT PACKAGE
           osc comment list project PROJECT
           osc comment list request REQUEST_ID

           osc comment create [-p PARENT_ID] [-c COMMENT] package PROJECT PACKAGE
           osc comment create [-p PARENT_ID] [-c COMMENT] project PROJECT
           osc comment create [-p PARENT_ID] [-c COMMENT] request REQUEST_ID

           osc comment delete ID

       options:

              -c COMMENT, --comment COMMENT
                     comment text

              -p PARENT, --parent PARENT
                     reply to comment with parent id

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

       usage: osc [global opts] commit [-h] [-m TEXT] [-n] [-F FILE] [-f]
                                       [--skip-local-service-run]

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

       options:

              -m TEXT, --message TEXT
                     specify log message TEXT

              -n, --no-message
                     do not specify a log message

              -F FILE, --file FILE
                     read log message from FILE, '-' denotes standard input.

              -f, --force
                     Allow  empty commit with no changes. When commiting a project, allow removing packages even
                     if other packages depend on them.

              --skip-local-service-run, --noservice, --no-service
                     Skip run of local source services as specified in _service file.

   osc config
       Get/set a config option

       usage: osc [global opts] config [-h] [-d] [-s] [-p] [--change-password]
                                       [--select-password-store] [--no-echo] [--dump]
                                       [--dump-full]

       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)
           osc config section --change-password (changes the password in section "section")
           (section is either an apiurl or an alias or 'general')
           osc config --dump (dump the complete configuration)

       options:

              -d, --delete
                     delete option from config or reset option to the default)

              -s, --stdin
                     indicates that the config value should be read from stdin

              -p, --prompt
                     prompt for a value

              --change-password
                     Change password

              --select-password-store
                     Change the password store

              --no-echo
                     prompt for a value but do not echo entered characters

              --dump dump the complete configuration (without 'pass' and 'passx' options)

              --dump-full
                     dump the complete configuration (including 'pass' and 'passx' options)

   osc copypac
       Copy a package

       usage: osc [global opts] copypac [-h] [-c] [-k] [-K] [-d] [-r rev] [-t URL]
                                        [-m TEXT] [-e]

       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.

       If SOURCEPRJ or DESTPRJ is '.' it will be expanded to the PRJ of the current directory.

       usage:
           osc copypac SOURCEPRJ SOURCEPAC DESTPRJ [DESTPAC]

       options:

              -c, --client-side-copy
                     do a (slower) client-side copy

              -k, --keep-maintainers
                     keep  original  maintainers.  Default  is  remove  all and replace with the one calling the
                     script.

              -K, --keep-link
                     If the target package is a link, the link is kept,  but  may  be  updated.  If  the  source
                     package is a link, its expanded version is considered.

              -d, --keep-develproject
                     keep develproject tag in the package metadata

              -r rev, --revision rev
                     copy the specified revision.

              -t URL, --to-apiurl URL
                     URL of destination api server. Default is the source api server.

              -m TEXT, --message TEXT
                     specify message TEXT

              -e, --expand
                     if the source package is a link then copy the expanded version of the link

   osc create-pbuild-config (cpc)
       This command is creating the necessary files to build using pbuild tool.

       usage: osc [global opts] create-pbuild-config [-h] repository arch

       It  basically  creates _config and _pbuild file in the project directory.  Changes from there can not get
       submitted back, except the project is managed in git.

       Examples:
           osc cpc REPOSITORY ARCH

       arguments:

              repository

              arch

   osc createincident
       Create a maintenance incident

       usage: osc [global opts] createincident [-h] [-a ATTRIBUTE] [--noaccess]
                                               [-m TEXT]

       [See     https://openbuildservice.org/help/manuals/obs-user-guide/cha.obs.maintenance_setup.html      for
       information on this topic.]

       This  command  is  asking  to  open  an  empty  maintenance  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:

              -a ATTRIBUTE, --attribute ATTRIBUTE
                     Use this attribute to find default maintenance project (default is OBS:MaintenanceProject)

              --noaccess
                     Create a hidden project

              -m TEXT, --message TEXT
                     specify message TEXT

   osc createrequest (creq)
       Create multiple requests with a single command

       usage: osc [global opts] createrequest [-h] [-a ACTION [[ARGS] ...]] [-m TEXT]
                                              [-r REV] [-s REQUEST_ID]
                                              [--nodevelproject] [--cleanup]
                                              [--no-cleanup] [--no-update] [--yes]

       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:

              -a ACTION [[ARGS] ...], --action ACTION [[ARGS] ...]
                     specify action type of a request, can be : submit/delete/change_devel/add_role/set_bugowner

              -m TEXT, --message TEXT
                     specify message TEXT

              -r REV, --revision REV
                     for "create", specify a certain source revision ID (the md5 sum)

              -s REQUEST_ID, --supersede REQUEST_ID
                     Superseding another request by this one

              --nodevelproject
                     do not follow a defined devel project (primary project where a package is developed)

              --cleanup
                     remove package if submission gets accepted (default for home:<id>:branch projects)

              --no-cleanup
                     never remove source package on accept, but update its content

              --no-update
                     never touch source package on accept (will break source links)

              --yes  proceed without asking.

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

       usage: osc [global opts] delete [-h] [-f]

       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:

              -f, --force
                     forces removal of entire package and its files

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

       usage: osc [global opts] deleterequest [-h] [-m TEXT] [-r REPOSITORY] [--all]
                                              [--accept-in-hours HOURS]

       usage:
           osc deletereq [-m TEXT]                     # works in checked out project/package
           osc deletereq [-m TEXT] PROJECT PACKAGE
           osc deletereq [-m TEXT] PROJECT [--all|--repository REPOSITORY]

       options:

              -m TEXT, --message TEXT
                     specify message TEXT

              -r REPOSITORY, --repository REPOSITORY
                     specify repository

              --all  deletes entire project with packages inside

              --accept-in-hours HOURS
                     specify time  when  request  shall  get  accepted  automatically.  Only  works  with  write
                     permissions in target.

   osc dependson
       Dependson shows the build dependencies inside of a project, valid for a given repository and architecture

       usage: osc [global opts] dependson [-h] [-M FLAVOR]

       The  command can be used to find build dependencies (wrt. a given repository and arch) that reside in the
       same project. To see all build dependencies use the buildinfo command.

       This is no guarantee, since the new build might have changed dependencies.

       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

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

       options:

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavor of a multibuild package.

   osc detachbranch
       Replace a link with its expanded sources

       usage: osc [global opts] detachbranch [-h] [-m TEXT]

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

       usage:
           osc detachbranch                    # from a package working copy
           osc detachbranch PROJECT PACKAGE

       options:

              -m TEXT, --message TEXT
                     specify message TEXT

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

       usage: osc [global opts] develproject [-h]

       Examples:
           osc develproject [PROJECT PACKAGE]

   osc diff (di, ldiff, linkdiff)
       Generates a diff

       usage: osc [global opts] diff [-h] [-c rev] [-r rev1[:rev2]] [-M] [-p] [-l]
                                     [--missingok] [-u]

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

       usage:
               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:

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

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

              -M, --meta
                     operate on meta files

              -p, --plain
                     output the diff in plain (not unified) diff format

              -l, --link
                     (osc linkdiff): compare against the base revision of the link

              --missingok
                     do not fail if the source or target project/package does not exist on the server

              -u, --unexpand
                     Local changes only, ignore changes in linked package sources

   osc distributions (dists)
       Shows all available distributions

       usage: osc [global opts] distributions [-h]

       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

   osc downloadassets (da)
       Download all assets referenced in the build descriptions

       usage: osc [global opts] downloadassets [-h]

   osc enablechannels (enablechannel)
       Enables channels

       usage: osc [global opts] enablechannels [-h]

       Enables existing channel packages in a  project.  Enabling  means  adding  the  needed  repositories  for
       building.  The command can be used to enable a specific one or all channels of a project.

       Examples:
           osc enablechannels [PROJECT [PACKAGE]]

   osc getbinaries
       Download binaries to a local directory

       usage: osc [global opts] getbinaries [-h] [-d DIR] [-M FLAVOR] [--sources]
                                            [--debuginfo] [--ccache]

       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 REPOSITORY ARCHITECTURE
          osc getbinaries PROJECT PACKAGE REPOSITORY ARCHITECTURE
          osc getbinaries PROJECT PACKAGE REPOSITORY ARCHITECTURE FILE

       options:

              -d DIR, --destdir DIR
                     destination directory

              -M FLAVOR, --multibuild-package FLAVOR
                     Get  binaries from the specified flavor of a multibuild package. It is meant for use from a
                     package checkout when it is not possible to specify package:flavor.

              --sources
                     also fetch source packages

              --debuginfo
                     also fetch debug packages

              --ccache
                     allow fetching ccache archive

   osc help (?)
       Give detailed help on a specific sub-command

       usage: osc [global opts] help [-h]

       usage:
         %(prog)s [SUBCOMMAND]

   osc importsrcpkg
       Import a new package from a src.rpm

       usage: osc [global opts] importsrcpkg [-h] [-p project] [-n name] [-t title]
                                             [-d description] [--delete-old-files]
                                             [-c]
                                             srpm

       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.

       arguments:

              srpm

       options:

              -p project, --project project
                     specify the path to a project

              -n name, --name name
                     specify a package name

              -t title, --title title
                     set a title

              -d description, --description description
                     set the description of the package

              --delete-old-files
                     delete existing files from the server

              -c, --commit
                     commit the new files

   osc info
       Print information about a working copy

       usage: osc [global opts] info [-h]

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

   osc init
       Initialize a directory as working copy

       usage: osc [global opts] init [-h] project [package] [scm_url]

       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
           osc init PRJ PAC SCM_URL

       arguments:

              project

              package

              scm_url

   osc jobhistory (jobhist)
       Shows the job history of a project

       usage: osc [global opts] jobhistory [-h] [--csv] [-l limit] [-M FLAVOR]

       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[:FLAVOR]] REPOSITORY ARCHITECTURE

       options:

              --csv  generate output in CSV (separated by |)

              -l limit, --limit limit
                     for setting the number of results

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavor of a multibuild package.

   osc linkpac
       "Link" a package to another package

       usage: osc [global opts] linkpac [-h] [-C {add,copy,local}] [-c] [-r rev] [-f]
                                        [--disable-build] [-d] [-N]

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

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

       Afterwards, you will want to 'checkout TARGET_PROJECT TARGET_PACKAGE'.

       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 PROJECT PACKAGE TARGET_PROJECT [TARGET_PACKAGE]
           osc linkpac TARGET_PROJECT [TARGET_PACKAGE]  # from a package checkout

       options:

              -C {add,copy,local}, --cicount {add,copy,local}
                     cicount attribute in  the  link,  known  values  are  add,  copy,  and  local,  default  in
                     buildservice is currently add.

              -c, --current
                     link fixed against current revision.

              -r rev, --revision rev
                     link the specified revision.

              -f, --force
                     overwrite an existing link file if it is there.

              --disable-build
                     disable building of the linked package

              -d, --disable-publish
                     disable publishing of the linked package

              -N, --new-package
                     create a link to a not yet existing package

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

       usage: osc [global opts] linktobranch [-h]

       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                    # from a package working copy
           osc linktobranch PROJECT PACKAGE

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

       usage: osc [global opts] list [-h] [-a ARCH] [-r REPO] [-b] [-e] [-u] [-l]
                                     [-D] [-M] [-R REVISION]

       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 (doesn't apply to binaries)
          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:
          ls [PROJECT [PACKAGE]]
          ls -b [PROJECT [PACKAGE [REPO [ARCH]]]]

       options:

              -a ARCH, --arch ARCH
                     specify architecture (only for binaries)

              -r REPO, --repo REPO
                     specify repository (only for binaries)

              -b, --binaries
                     list built binaries instead of sources

              -e, --expand
                     expand linked package (only for sources)

              -u, --unexpand
                     always work with unexpanded (source) packages

              -l, --long
                     print extra information

              -D, --deleted
                     show only the former deleted projects or packages

              -M, --meta
                     list meta data files

              -R REVISION, --revision REVISION
                     specify revision (only for sources)

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

       usage: osc [global opts] localbuildlog [-h] [-o OFFSET] [-s]

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

       options:

              -o OFFSET, --offset OFFSET
                     get log starting from offset

              -s, --strip-time
                     strip leading build time from the log

   osc lock
       Locks a project or package

       usage: osc [global opts] lock [-h] [-m TEXT]

       usage:
          osc lock PROJECT [PACKAGE]

       options:

              -m TEXT, --message TEXT
                     specify log message TEXT

   osc log
       Shows the commit log of a package

       usage: osc [global opts] log [-h] [-r rev] [-p] [--csv] [--xml] [-D] [-M]

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

       options:

              -r rev, --revision rev
                     show log of the specified revision

              -p, --patch
                     show patch for each revision; NOTE: use this option carefully because it loads  patches  on
                     demand in a pager

              --csv  generate output in CSV

              --xml  generate output in XML

              -D, --deleted
                     work on deleted package

              -M, --meta
                     checkout out meta data instead of sources

   osc maintainer (bugowner)
       Show maintainers according to server side configuration

       usage: osc [global opts] maintainer [-h] [-b] [-B] [-e] [--nodevelproject]
                                           [-D devel_project] [-a user] [-A]
                                           [-s user] [-S user] [-U USER] [-G GROUP]
                                           [-d user] [-r role] [-m MESSAGE]

       #  Search for official maintained sources in OBS instance osc maintainer BINARY_OR_PACKAGE_NAME <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.

       options:

              -b, --bugowner-only
                     Show only the bugowner

              -B, --bugowner
                     Show only the bugowner if defined, or maintainer otherwise

              -e, --email
                     show email addresses instead of user names

              --nodevelproject
                     do not follow a defined devel project (primary project where a package is developed)

              -D devel_project, --devel-project devel_project
                     define the project where this package is primarily developed

              -a user, --add user
                     add a new person for given role ("maintainer" by default)

              -A, --all
                     list all found entries not just the first one

              -s user, --set-bugowner user
                     Set the bugowner to specified person (or group via group: prefix)

              -S user, --set-bugowner-request user
                     Set the bugowner to specified person via a request (or group via group: prefix)

              -U USER, --user USER
                     All official maintained instances for the specified USER  (specified  by  the  username  or
                     email)

              -G GROUP, --group GROUP
                     All official maintained instances for the specified GROUP

              -d user, --delete user
                     delete a maintainer/bugowner (can be specified via --role)

              -r role, --role role
                     Specify user role

              -m MESSAGE, --message MESSAGE
                     Define message as commit entry or request description

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

       usage: osc [global opts] maintenancerequest [-h] [-a ATTRIBUTE] [-m TEXT]
                                                   [--release-project RELEASEPROJECT]
                                                   [--enforce-branching]
                                                   [--no-cleanup] [--cleanup]
                                                   [--incident INCIDENT]
                                                   [--incident-project INCIDENT_PROJECT]
                                                   [-s REQUEST_ID]

       [See      https://openbuildservice.org/help/manuals/obs-user-guide/cha.obs.maintenance_setup.html     for
       information on this topic.]

       This command is asking the  maintenance  team  to  start  a  maintenance  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 ] ]
           osc maintenancerequest .

       The 2nd line when issued within a package directory provides a short cut to submit a single package  (the
       one  in  the  current  directory) from the project of this package to be submitted to the release project
       this package links to. This syntax is only valid when specified from a package subdirectory.

       options:

              -a ATTRIBUTE, --attribute ATTRIBUTE
                     Use this attribute to find default maintenance project (default is OBS:MaintenanceProject)

              -m TEXT, --message TEXT
                     specify message TEXT

              --release-project RELEASEPROJECT
                     Specify the release project

              --enforce-branching
                     submit from a fresh branched project

              --no-cleanup
                     do not remove source project on accept

              --cleanup
                     do remove source project on accept

              --incident INCIDENT
                     specify incident number to merge in

              --incident-project INCIDENT_PROJECT
                     specify incident project to merge in

              -s REQUEST_ID, --supersede REQUEST_ID
                     Superseding another request by this one

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

       usage: osc [global opts] mbranch [-h] [-c] [-a ATTRIBUTE]
                                        [-u UPDATE_ATTRIBUTE] [--dryrun] [--noaccess]
                                        [--nodevelproject] [--version]

       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.

       If osc maintained or sm is issued only the relevant instances of a package will be shown. No branch  will
       be created. This is similar to osc mbranch --dryrun.

       usage:
           osc sm [SOURCEPACKAGE] [-a ATTRIBUTE]
           osc mbranch [ SOURCEPACKAGE [ TARGETPROJECT ] ]

       options:

              -c, --checkout
                     Checkout branched package afterwards ('osc bco' is a shorthand for this option)

              -a ATTRIBUTE, --attribute ATTRIBUTE
                     Use this attribute to find affected packages (default is OBS:Maintained)

              -u UPDATE_ATTRIBUTE, --update-project-attribute UPDATE_ATTRIBUTE
                     Use this attribute to find update projects (default is OBS:UpdateProject)

              --dryrun
                     Just simulate the action and report back the result.

              --noaccess
                     Create a hidden project

              --nodevelproject
                     do not follow a defined devel project (primary project where a package is developed)

              --version
                     print version of maintained package

   osc meta
       Show meta information, or edit it

       usage: osc [global opts] meta [-h] [-a ATTRIBUTE] [--attribute-defaults]
                                     [--attribute-project] [--blame] [-f] [-F FILE]
                                     [-r REV] [-m TEXT] [-e] [-c] [-R]
                                     [-s ATTRIBUTE_VALUES] [--add ATTRIBUTE_VALUES]
                                     [--delete]

       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.  group denotes the
       metadata of a group.  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 -

       For meta prj and prjconf updates optional commit messages can be applied with --message.

       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|prjconf> [-r|--revision REV] ARGS...
           osc meta <prj|pkg|prjconf|user|group|pattern> ARGS...
           osc meta <prj|pkg|prjconf|user|group|pattern> [-m|--message TEXT] -e|--edit ARGS...
           osc meta <prj|pkg|prjconf|user|group|pattern> [-m|--message TEXT] -F|--file ARGS...
           osc meta pattern --delete PRJ PATTERN
           osc   meta   attribute   PRJ   [PKG   [SUBPACKAGE]]   [--attribute   ATTRIBUTE]   [--create    [--set
       <value_list>]|--delete|--set <value_list>]

       options:

              -a ATTRIBUTE, --attribute ATTRIBUTE
                     affect only a given attribute

              --attribute-defaults
                     include defined attribute defaults

              --attribute-project
                     include project values, if missing in packages

              --blame
                     show author and time of each line

              -f, --force
                     force  the  save  operation, allows one to ignores some errors like depending repositories.
                     For prj meta only.

              -F FILE, --file FILE
                     read metadata from FILE, instead of opening an editor. '-' denotes standard input.

              -r REV, --revision REV
                     checkout given revision instead of head revision. For prj and prjconf meta only

              -m TEXT, --message TEXT
                     specify log message TEXT. For prj and prjconf meta only

              -e, --edit
                     edit metadata

              -c, --create
                     create attribute without values

              -R, --remove-linking-repositories
                     Try to remove also all repositories building against remove ones.

              -s ATTRIBUTE_VALUES, --set ATTRIBUTE_VALUES
                     set attribute values

              --add ATTRIBUTE_VALUES
                     add to the existing attribute values, skip duplicates

              --delete
                     delete a pattern or attribute

   osc mkpac
       Create a new package under version control

       usage: osc [global opts] mkpac [-h]

       usage:
           osc mkpac new_package

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

       usage: osc [global opts] mv [-h] [-f] source dest

       arguments:

              source

              dest

       options:

              -f, --force
                     forces removal of entire package and its files

   osc my
       Show waiting work, packages, projects or requests involving yourself

       usage: osc [global opts] my [-h] [-b] [-m] [-a] [-U USER]
                                   [--exclude-project EXCLUDE_PROJECT] [--maintained]

       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 requests I made
           osc my sr

       usage:
           osc my <TYPE>

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

       options:

              -b, --bugowner
                     restrict listing to items where the user is bugowner

              -m, --maintainer
                     restrict listing to items where the user is maintainer

              -a, --all
                     all involvements

              -U USER, --user USER
                     search for USER instead of yourself

              --exclude-project EXCLUDE_PROJECT
                     exclude requests for specified project

              --maintained
                     limit search results to packages with maintained attribute set.

   osc patchinfo
       Generate and edit a patchinfo file

       usage: osc [global opts] patchinfo [-h] [-f]

       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:

              -f, --force
                     force generation of new patchinfo file, do not update existing one.

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

       usage: osc [global opts] pdiff [-h] [-p] [-n]

       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:

              -p, --plain
                     output the diff in plain (not unified) diff format

              -n, --nomissingok
                     fail if the parent package does not exist on the server

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

       usage: osc [global opts] prdiff [-h] [-r] [-e REGEXP] [-i REGEXP] [-n] [-o]
                                       [-u] [-d]

       Compares two projects and either summarizes 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:

              -r, --requests
                     show open requests for any packages with differences

              -e REGEXP, --exclude REGEXP
                     skip packages matching REGEXP

              -i REGEXP, --include REGEXP
                     only consider packages matching REGEXP

              -n, --show-not-in-old
                     show packages only in the new project

              -o, --show-not-in-new
                     show packages only in the old project

              -u, --unified
                     show full unified diffs of differences

              -d, --diffstat
                     show diffstat of differences

   osc prjresults (pr)
       Shows project-wide build results

       usage: osc [global opts] prjresults [-h] [-b] [-w] [-c] [--xml] [-s STATUS]
                                           [-n EXPR] [-a ARCH] [-r REPO] [-V]
                                           [--show-excluded]

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

       options:

              -b, --brief
                     show the result in "pkgname repo arch result"

              -w, --watch
                     watch the results until all finished building, only supported with --xml

              -c, --csv
                     csv output

              --xml  generate output in XML

              -s STATUS, --status-filter STATUS
                     show only packages with buildstatus STATUS (see legend)

              -n EXPR, --name-filter EXPR
                     show only packages whose names match EXPR

              -a ARCH, --arch ARCH
                     show results only for specified architecture(s)

              -r REPO, --repo REPO
                     show results only for specified repo(s)

              -V, --vertical
                     list packages vertically instead horizontally

              --show-excluded
                     show packages that are excluded in all repos, also  hide  repos  that  have  only  excluded
                     packages

   osc pull
       Merge the changes of the link target into your working copy

       usage: osc [global opts] pull [-h]

   osc rdelete
       Delete a project or packages on the server

       usage: osc [global opts] rdelete [-h] [-r] [-f] [-m TEXT]

       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:

              -r, --recursive
                     deletes a project with packages inside

              -f, --force
                     deletes a project where other depends on

              -m TEXT, --message TEXT
                     specify log message TEXT

   osc rdiff
       Server-side "pretty" diff of two packages

       usage: osc [global opts] rdiff [-h] [--issues-only] [-M] [-r N[:M]] [-p]
                                      [-c rev] [--missingok] [-u] [--xml]

       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.

       usage:
           osc rdiff OLDPRJ OLDPAC NEWPRJ [NEWPAC]
           osc rdiff PROJECT PACKAGE
           osc rdiff PROJECT --meta

       options:

              --issues-only
                     show only issues in diff

              -M, --meta
                     diff meta data

              -r N[:M], --revision N[:M]
                     revision id, where N = old revision and M = new revision

              -p, --plain
                     output the diff in plain (not unified) diff format and show diff of files in archives

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

              --missingok
                     do not fail if the source or target project/package does not exist on the server

              -u, --unexpand
                     diff unexpanded version if sources are linked

              --xml  show diff as xml (only for issues diff)

   osc rebuild (rebuildpac)
       Trigger package rebuilds

       usage: osc [global opts] rebuild [-h] [-a ARCH] [-r REPO] [-f] [-M FLAVOR]
                                        [--all]

       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[:FLAVOR] [REPOSITORY [ARCH]]]]

       options:

              -a ARCH, --arch ARCH
                     trigger rebuilds for a specific architecture

              -r REPO, --repo REPO
                     trigger rebuilds for a specific repository

              -f, --failed
                     rebuild all failed packages

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavors of a multibuild package.  Globs are resolved according
                     to _multibuild file from server.  Empty string is resolved to a package without a flavor.

              --all  Rebuild all packages of entire project

   osc release
       Release sources and binaries

       usage: osc [global opts] release [-h] [-a ARCH] [-r REPO]
                                        [--target-project TARGETPROJECT]
                                        [--target-repository TARGETREPOSITORY]
                                        [--set-release RELEASETAG] [--no-delay]

       This  command  is  used  to  transfer  sources and binaries without rebuilding them.  It requires defined
       release targets set to trigger="manual".

       usage:
           osc release [PROJECT [PACKAGE]]

       options:

              -a ARCH, --arch ARCH
                     Release only binaries from the specified architecture

              -r REPO, --repo REPO
                     Release only binaries from the specified repository

              --target-project TARGETPROJECT
                     Release only to specified project

              --target-repository TARGETREPOSITORY
                     Release only to specified repository

              --set-release RELEASETAG
                     rename binaries during release using this release tag

              --no-delay
                     Don't put the release job in a queue to be run later, but immediately run it. Thus the next
                     call  to osc prjresult will reflect it. Otherwise there is no way to know if it is finished
                     or didn't start yet.

   osc releaserequest
       Create a release request

       usage: osc [global opts] releaserequest [-h] [-m TEXT] [-p PKG]

       For maintenance incident projects:

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

       [See https://openbuildservice.org/help/manuals/obs-user-guide/cha.obs.maintenance_setup.html
        for information on this topic.]

       For normal projects:

       This  command  is  used  to  transfer  sources and binaries without rebuilding them.  It requires defined
       release targets set to trigger="manual".

       [See https://openbuildservice.org/help/manuals/obs-user-guide/cha.obs.request_and_review_system.html
        for information on this topic.]

       usage:
           osc releaserequest [-p package] [ SOURCEPROJECT ]

       options:

              -m TEXT, --message TEXT
                     specify message TEXT

              -p PKG, --package PKG
                     specify packages to release

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

       usage: osc [global opts] remotebuildlog [-h] [-l] [--lastsucceeded]
                                               [-M FLAVOR] [-o OFFSET] [-s]

       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[:flavor] repository arch
           or
           osc remotebuildlog project/package[:flavor]/repository/arch
           or
           osc remotebuildlog buildlogurl

       options:

              -l, --last
                     Show the last finished log file

              --lastsucceeded, --last-succeeded
                     Show the last succeeded log file

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavor of a multibuild package.

              -o OFFSET, --offset OFFSET
                     get log starting or ending from the offset

              -s, --strip-time
                     strip leading build time from the log

   osc repairlink
       Repair a broken source link

       usage: osc [global opts] repairlink [-h] [-d DIR]

       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:

              -d DIR, --destdir DIR
                     destination directory

   osc repairwc
       Try to repair an inconsistent working copy

       usage: osc [global opts] repairwc [-h] [--force-apiurl]

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

       options:

              --force-apiurl
                     ask once for an apiurl and force this apiurl for all inconsistent projects/packages

   osc repositories (platforms, repos)
       Shows repositories configured for a project

       usage: osc [global opts] repositories [-h]

       It skips repositories by default which are disabled for a given package.

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

   osc repourls
       Shows URLs of .repo files

       usage: osc [global opts] repourls [-h]

       Shows URLs on which to access the project repositories.

       usage:
          osc repourls [PROJECT]

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

       usage: osc [global opts] request [-h] [-d] [-S SUPERSEDED_REQUEST] [-u]
                                        [--no-devel] [-m TEXT] [-t TYPE] [-a] [-f]
                                        [-s STATE] [-D DAYS] [-U USER] [-G GROUP]
                                        [-P PROJECT] [-p PACKAGE] [-b] [-M] [-B] [-e]
                                        [-i] [--or-revoke] [--non-interactive]
                                        [--exclude-target-project EXCLUDE_TARGET_PROJECT]
                                        [--keep-packages-locked] [--incoming]
                                        [--involved-projects]
                                        [--target-package-filter TARGET_PACKAGE_FILTER]
                                        [--source-buildstatus]

       [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" WARNING: Revoking a maitenance release request unlocks
       packages in the source project.
                To avoid unlocking, use the --keep-packages-locked option.

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

       "approve"  marks  a  requests in "review" state as approved. This request will get accepted automatically
       when the last review got accepted.

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

       "prioritize" change the priority 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 approve [-m TEXT] ID
           osc request cancelapproval [-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 prioritize [-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:

              -d, --diff
                     generate a diff

              -S SUPERSEDED_REQUEST, --superseded-request SUPERSEDED_REQUEST
                     Create the diff relative to a given former request

              -u, --unified
                     output the diff in the unified diff format

              --no-devel
                     Do not attempt to forward to devel project

              -m TEXT, --message TEXT
                     specify message TEXT

              -t TYPE, --type TYPE
                     limit      to      requests      which      contain      a      given      action      type
                     (submit/delete/change_devel/add_role/set_bugowner/maintenance_incident/maintenance_release)

              -a, --all
                     all states. Same as'-s all'

              -f, --force
                     enforce  state  change,  can be used to ignore open reviews, devel-package dependencies and
                     more

              -s STATE, --state STATE
                     only    list    requests    in    one    of    the    comma    separated    given    states
                     (new/review/accepted/revoked/declined) or "all" [default="new,review,declined"]

              -D DAYS, --days DAYS
                     only list requests in state "new" or changed in the last DAYS.

              -U USER, --user USER
                     requests or reviews limited for the specified USER

              -G GROUP, --group GROUP
                     requests or reviews limited for the specified GROUP

              -P PROJECT, --project PROJECT
                     requests or reviews limited for the specified PROJECT

              -p PACKAGE, --package PACKAGE
                     requests or reviews limited for the specified PACKAGE, requires also a PROJECT

              -b, --brief
                     print output in list view as list subcommand

              -M, --mine
                     only show requests created by yourself

              -B, --bugowner
                     also show requests about packages where I am bugowner

              -e, --edit
                     edit a submit action

              -i, --interactive
                     interactive review of request

              --or-revoke
                     For automation 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.

              --non-interactive
                     non-interactive review of request

              --exclude-target-project EXCLUDE_TARGET_PROJECT
                     exclude target project from request list

              --keep-packages-locked
                     Avoid unlocking of packages in maintenance incident when revoking release requests

              --incoming
                     Show only requests where the project is target

              --involved-projects
                     show all requests for project/packages where USER is involved

              --target-package-filter TARGET_PACKAGE_FILTER
                     only list requests for the  packages  matching  the  package  filter.  A  (python)  regular
                     expression is expected.

              --source-buildstatus
                     print  the  buildstatus  of  the source package (only works with "show" and the interactive
                     review)

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

       usage: osc [global opts] requestmaintainership [-h] [-m TEXT] [-r role]

       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 group:NAME         # request for specified group
           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:

              -m TEXT, --message TEXT
                     specify message TEXT

              -r role, --role role
                     specify user role (default: maintainer)

   osc resolved
       Remove 'conflicted' state on working copy files

       usage: osc [global opts] resolved [-h]

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

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

       usage: osc [global opts] restartbuild [-h] [-a ARCH] [-M FLAVOR] [-r REPO]
                                             [--all]

       usage:
           osc restartbuild [PROJECT [PACKAGE[:FLAVOR] [REPOSITORY [ARCH]]]]

       options:

              -a ARCH, --arch ARCH
                     Restart builds for a specific architecture

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavors of a multibuild package.  Globs are resolved according
                     to _multibuild file from server.  Empty string is resolved to a package without a flavor.

              -r REPO, --repo REPO
                     Restart builds for a specific repository

              --all  Restart all running builds of entire project

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

       usage: osc [global opts] results [-h] [-l] [-r REPO] [-a ARCH] [-b]
                                        [--no-multibuild] [-M FLAVOR] [-V] [-w] [-F]
                                        [-s STATUS_FILTER] [-f] [--xml] [--csv]
                                        [--format FORMAT] [--show-excluded]

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

       options:

              -l, --last-build
                     show last build results (succeeded/failed/unknown)

              -r REPO, --repo REPO
                     Show results only for specified repo(s)

              -a ARCH, --arch ARCH
                     Show results only for specified architecture(s)

              -b, --brief
                     show the result in "pkgname repo arch result". Default for -f

              --no-multibuild
                     Disable results for all direct affect packages inside of the project

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavors of a multibuild package.  Globs are resolved according
                     to _multibuild file from server.  Empty string is resolved to a package without a flavor.

              -V, --vertical
                     list packages vertically instead horizontally for entire project

              -w, --watch
                     watch the results until all finished building

              -F, --fail-on-error
                     fail with exit 1 if any build has errored

              -s STATUS_FILTER, --status-filter STATUS_FILTER
                     only show packages with the given build status

              -f, --failed
                     show only failed results

              --xml  generate output in XML (former results_meta)

              --csv  generate output in CSV format

              --format FORMAT
                     Change  the  format  of  the  text  (default)  or csv output. Not supported for xml output.
                     Supported fields: project, package, repository, arch, state, dirty,  code,  details.   Text
                     output  format  requires  using  the  field  names  in  form  of  named  fields  for string
                     interpolation: ``%(field)s``.  CSV  output  format  requires  field  names  separated  with
                     commas.

              --show-excluded
                     show repos that are excluded for this package

   osc revert
       Restore changed files or the entire working copy

       usage: osc [global opts] revert [-h] file [file ...]

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

       arguments:

              file

   osc rpmlintlog (lint, rpmlint)
       Shows the rpmlint logfile

       usage: osc [global opts] rpmlintlog [-h]

       Shows the rpmlint logfile to analyse if there are any problems with the spec file and the built binaries.

       usage:
           osc rpmlintlog project package repository arch

   osc rremove
       Remove source files from selected package

       usage: osc [global opts] rremove [-h] [-f] project package file [file ...]

       arguments:

              project

              package

              file

       options:

              -f, --force
                     Don't ask and delete files

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

       usage: osc [global opts] search [-h] [--repos-baseurl] [-e] [-s] [--package]
                                       [--project] [--title] [--description]
                                       [-a ATTRIBUTE] [-V] [-i] [-b] [-m] [-M]
                                       [--csv] [--binary] [-B PROJECT]
                                       [--binaryversion VERSION]

       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 search --package perl-Foo-Bar')

       options:

              --repos-baseurl
                     show base URLs of download repositories

              -e, --exact
                     show only exact matches, this is default now

              -s, --substring
                     Show also results where the search term is a sub string, slower search

              --package
                     search for a package

              --project
                     search for a project

              --title
                     search for matches in the 'title' element

              --description
                     search for matches in the 'description' element

              -a ATTRIBUTE, --limit-to-attribute ATTRIBUTE
                     match only when given attribute exists in meta data

              -V, --version
                     show package version, revision, and srcmd5. CAUTION: This is slow and unreliable

              -i, --involved
                     show projects/packages where given person (or myself) is involved as bugowner or maintainer
                     [[{group|person}/]<name>] default: person

              -b, --bugowner
                     as -i, but only bugowner

              -m, --maintainer
                     as -i, but only maintainer

              -M, --mine
                     shorthand for --bugowner --package

              --csv  generate output in CSV (separated by |)

              --binary
                     search binary packages

              -B PROJECT, --baseproject PROJECT
                     search packages built for PROJECT (implies --binary)

              --binaryversion VERSION
                     search for binary with specified version (implies --binary)

   osc sendsysrq
       Trigger a sysrq in a running build

       usage: osc [global opts] sendsysrq [-h] [-M FLAVOR]

       This  is only going to work when the build is running in a supported VM.  Also only a subset of sysrq are
       supported. Typical use case for debugging are 9, t and w in this sequence.

       usage:
           osc sendsysrq REPOSITORY ARCH SYSRQ
           osc sendsysrq PROJECT PACKAGE[:FLAVOR] REPOSITORY ARCH SYSRQ

       options:

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavors of a multibuild package.  Globs are resolved according
                     to _multibuild file from server.  Empty string is resolved to a package without a flavor.

   osc service
       Handle source services

       usage: osc [global opts] service [-h] [-v]

       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 runall
           osc service manualrun [SOURCE_SERVICE]
           osc service remoterun [PROJECT PACKAGE]
           osc service merge [PROJECT PACKAGE]
           osc service wait [PROJECT PACKAGE]

           COMMAND can be:
           run         r  run defined services with modes "trylocal", "localonly", or no mode set locally,
                          may take an optional parameter to run only a specified source service. In case
                          parameters exist for this one in _service file they are used.
           runall      ra run all services independent of the used mode
           manualrun   mr run all services with mode "manual", may take an optional parameter to run only a
                          specified source service
           remoterun   rr trigger a re-run on the server side
           merge          commits all server side generated files and drops the _service definition
           wait           waits until the service finishes and returns with an error if it failed

           Not for common usage anymore:
           localrun    lr the same as "run" but services with mode "serveronly" are also executed
           disabledrun dr run all services with mode "disabled"

       options:

              -v, --verbose
                     verbose run of local services for debugging purposes

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

       usage: osc [global opts] setdevelproject [-h] [-u]

       Examples:
           osc setdevelproject [PROJECT PACKAGE] DEVEL_PROJECT [DEVEL_PACKAGE]

       options:

              -u, --unset
                     remove devel project

   osc setlinkrev
       Updates a revision number in a source link

       usage: osc [global opts] setlinkrev [-h] [-r rev] [-R] [-u] [--vrev vrev]

       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:

              -r rev, --revision rev
                     use the specified revision.

              -R, --use-plain-revision
                     Do not expand revision the specified or latest rev

              -u, --unset
                     remove revision in link, it will point always to latest revision

              --vrev vrev
                     Enforce a given vrev

   osc showlinked
       Show all packages linking to a given one

       usage: osc [global opts] showlinked [-h]

       Examples:
           osc showlinked [PROJECT PACKAGE]

   osc signkey
       Manage Project Signing Key

       usage: osc [global opts] signkey [-h] [--create] [--extend] [--delete]
                                        [--notraverse] [--sslcert]

       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  (e.g. when dropping
       "KDE:KDE4:Community" key, the one from "KDE:KDE4" will be used).

       WARNING: THE OLD KEY CANNOT BE RESTORED AFTER USING DELETE OR CREATE

       options:

              --create
                     create new gpg signing key for this project

              --extend
                     extend expiration date of the gpg public key for this project

              --delete
                     delete the gpg signing key in this project

              --notraverse
                     don't traverse projects upwards to find key

              --sslcert
                     fetch SSL certificate instead of GPG key

   osc status (st)
       Show status of files in working copy

       usage: osc [global opts] status [-h] [-e]

       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
         'R' Replaced (file was deleted and added again afterwards)
         '?' 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:

              -e, --show-excluded
                     also show files which are excluded by the "exclude_glob" config option

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

       usage: osc [global opts] submitrequest [-h] [-m TEXT] [-F FILE] [-r REV]
                                              [-s REQUEST_ID] [--nodevelproject]
                                              [--separate-requests] [--cleanup]
                                              [--no-cleanup] [--no-update]
                                              [--update-link] [-d] [--yes]

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

       See the "request" command for showing and modifying 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:

              -m TEXT, --message TEXT
                     specify message TEXT

              -F FILE, --file FILE
                     read log message from FILE, '-' denotes standard input.

              -r REV, --revision REV
                     specify a certain source revision ID (the md5 sum) for the source package

              -s REQUEST_ID, --supersede REQUEST_ID
                     Superseding another request by this one

              --nodevelproject
                     do not follow a defined devel project (primary project where a package is developed)

              --separate-requests
                     Create multiple requests instead of a single one (when command is used for entire project)

              --cleanup
                     remove package if submission gets accepted (default for home:<id>:branch projects)

              --no-cleanup
                     never remove source package on accept, but update its content

              --no-update
                     never touch source package on accept (will break source links)

              --update-link
                     This transfers the source including the _link file.

              -d, --diff
                     show diff only instead of creating the actual request

              --yes  proceed without asking.

   osc token
       Show and manage authentication token

       usage: osc [global opts] token [-h] [-c] [-d TOKENID] [-o OPERATION]
                                      [-t TOKENSTRING] [--scm-token SCM_TOKEN]

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

       usage:
           osc token
           osc token --create --operation <OPERATION> [<PROJECT> <PACKAGE>]
           osc token --delete <TOKENID>
           osc token --trigger <TOKENSTRING> [--operation <OPERATION>] [<PROJECT> <PACKAGE>]

       options:

              -c, --create
                     Create a new token

              -d TOKENID, --delete TOKENID
                     Delete a token

              -o OPERATION, --operation OPERATION
                     Operation  associated  with  the  token.  Choices:  runservice,  branch,  release, rebuild,
                     workflow

              -t TOKENSTRING, --trigger TOKENSTRING
                     Trigger the action of a token

              --scm-token SCM_TOKEN
                     The scm's access token (only in combination with a --operation=workflow option)

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

       usage: osc [global opts] triggerreason [-h] [-M FLAVOR]

       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 (e.g. 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 triggerreason REPOSITORY ARCH
           osc triggerreason PROJECT PACKAGE[:FLAVOR] REPOSITORY ARCH

       options:

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavor of a multibuild package.

   osc undelete
       Restores a deleted project or package on the server

       usage: osc [global opts] undelete [-h] [-m TEXT]

       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

       options:

              -m TEXT, --message TEXT
                     specify log message TEXT

   osc unlock
       Unlocks a project or package

       usage: osc [global opts] unlock [-h] [-m TEXT]

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

       usage:
          osc unlock PROJECT [PACKAGE]

       options:

              -m TEXT, --message TEXT
                     specify log message TEXT

   osc update (up)
       Update a working copy

       usage: osc [global opts] update [-h] [-r REV] [--linkrev REV] [-u] [-e] [-s]
                                       [-S] [-l limit_size]

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

       options:

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

              --linkrev REV
                     revision of the link target that is used during link expansion

              -u, --unexpand-link
                     if a package is an expanded link, update to the raw _link file

              -e, --expand-link
                     if a package is a link, update to the expanded sources

              -s, --source-service-files
                     Run local source services after update.

              -S, --server-side-source-service-files
                     Use server side generated sources instead of local generation.

              -l limit_size, --limit-size limit_size
                     Skip all files with a given size

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

       usage: osc [global opts] updatepacmetafromspec [-h] [--specfile FILE]

       ARG, if specified, is a package working copy.

       options:

              --specfile FILE
                     Path to specfile. (if you pass more than working copy this option is ignored)

   osc vc
       Edit the changes file

       usage: osc [global opts] vc [-h] [-m MESSAGE] [-F FILE] [-e]

       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.

       By  default,  osc  vc  opens the program specified by the EDITOR environment variable (and it uses Vim if
       that variable is not set) with a temporary file that should replace the *.changes file when saved by  the
       editor, or discarded otherwise.

       options:

              -m MESSAGE, --message MESSAGE
                     add MESSAGE to changes (do not open an editor)

              -F FILE, --file FILE
                     read changes message from FILE (do not open an editor)

              -e, --just-edit
                     just open changes (cannot be used with -m)

   osc version
       Give version of osc binary

       usage: osc [global opts] version [-h]

       usage:
           osc version

   osc whatdependson
       Show the packages that require the specified package during the build

       usage: osc [global opts] whatdependson [-h] [-M FLAVOR]

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

       The packages marked with the [i] flag are inherited to the 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 whatdependson REPOSITORY ARCH

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

       options:

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavor of a multibuild package.

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

       usage: osc [global opts] whois [-h] [user ...]

       arguments:

              user

   osc wipebinaries (unpublish)
       Delete all binary packages of a certain project/package

       usage: osc [global opts] wipebinaries [-h] [-a ARCH] [-M FLAVOR] [-r REPO]
                                             [--build-disabled] [--build-failed]
                                             [--broken] [--unresolvable] [--all]

       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[:FLAVOR]]
           osc unpublish OPTS                       # works in checked out project dir
           osc unpublish OPTS PROJECT [PACKAGE[:FLAVOR]]

       options:

              -a ARCH, --arch ARCH
                     Delete all binary packages for a specific architecture

              -M FLAVOR, --multibuild-package FLAVOR
                     Only work with the specified flavors of a multibuild package.  Globs are resolved according
                     to _multibuild file from server.  Empty string is resolved to a package without a flavor.

              -r REPO, --repo REPO
                     Delete all binary packages for a specific repository

              --build-disabled
                     Delete all binaries of packages for which the build is disabled

              --build-failed
                     Delete all binaries of packages for which the build failed

              --broken
                     Delete all binaries of packages for which the package source is bad

              --unresolvable
                     Delete all binaries of packages which have dependency errors

              --all  Delete all binaries regardless of the package status (previously default)

   osc workerinfo
       Gets the information to a worker from the server

       usage: osc [global opts] workerinfo [-h] <hostarch>:<workerid>

       Examples:
           osc workerinfo x86_64:goat:1

       usage:
           osc workerinfo <hostarch>:<workerid>

       arguments:

              <hostarch>:<workerid>

AUTHOR

       Contributors to the osc project.

DISTRIBUTION

       The latest version of osc may be downloaded from ⟨https://github.com/openSUSE/osc/⟩