bionic (1) kup.1.gz

Provided by: kup-client_0.3.4-3_all bug

NAME

       kup - kernel.org upload utility

SYNOPSIS

       kup [global options] command [-- command...]

DESCRIPTION

       This  utility  is used to upload files to kernel.org and other systems using the same upload system (kup-
       server).  Each upload is required to have  a  PGP  signature,  and  the  server  will  generate  multiple
       compressed formats if the content uploaded is intended to be compressed.

       Additionally,  if  the user has content from a git(1) tree already on server, it is possible to reproduce
       the content server-side, thereby reducing bandwidth needs.  The user still has to  generate  the  content
       locally and sign it.

GLOBAL OPTIONS

       -b, --batch
              Instead  of  connecting  to  a  remote  host, output the protocol content to standard output.  The
              output from an arbitrary number of kup invocations can be concatenated into a single batchfile and
              then sent to the server as a single session, e.g.:

                     cat batchfile | ssh -a -x -k -T [user@]host

       -e, --rsh, --ssh command
              Override the default command used to connect to the server.  The default is set by the environment
              variable KUP_RSH or if that is not set, ssh -a -x -k -T.

       -H, --host [user@]host
              Override the default user and host to which to connect.  The default is  set  by  the  environment
              variable KUP_HOST or if that is not set, kup.kernel.org.

       -c, --subcmd subcommand
              After  establishing  the  ssh  connection, issue a subcommand in case the remote server is used in
              conjunction with an AuthZ tool like gitolite. Can also be set using the env variable KUP_SUBCMD or
              if not set, no subcommand will be used (default kup-server behavior).

COMMANDS

       A series of commands can be specified on a single command line, separated by a double dash argument (--).

       In  all cases, PGP signatures are detached signature files corresponding to the uncompressed content.  If
       a remote_path ends in .gz then gzip, bzip2 and xz compressed files are generated on the server; otherwise
       the content is stored uncompressed.

       put local_file signature_file remote_path
              Upload  the  file  local_file signed with signature_file.  local_file can be compressed with gzip,
              bzip2 or xz; this may reduce upload time.  The content will be stored compressed  or  uncompressed
              depending solely on the extension of remote_path.

       put --tar remote_tree ref signature_file remote_path
              Generate  a tar archive file from ref ref of git tree remote_tree (using git archive --format=tar)
              with signature signature_file generated locally, and place it in remote_path.

              git archive has been found to be relatively stable, so this command is relatively  robust  to  git
              version changes.

       put --diff remote_tree ref1 ref2 signature_file remote_path
              Generate  a patch file between refs ref1 and ref2 of git tree remote_tree (using git diff-tree -p)
              with signature signature_file generated locally, and place it in remote_path.

              The output of git diff-tree has been found to vary between git versions, so successful use of this
              command  may  require the same version of git locally as on the server in order to produce a valid
              signature.

       mkdir remote_path
              Create a new directory on the server.

       mv|move old_path new_path
              Move the file or directory old_path to new_path.  For a file, the .sign files are also moved,  and
              for compressed files, all the compression formats are moved together.

       ln|link old_path new_path
              Hard  link  the  file  or  directory  old_path  to new_path.  For a file, the .sign files are also
              linked, and for compressed files, all the compression formats are linked together.

       rm|del|delete old_path
              Delete the file or directory old_path.  For a file, the .sign files  are  also  deleted,  and  for
              compressed files, all the compression formats are deleted together.

       ls|dir path...
              Lists back the contents of one or more directories on the server.

PATHNAME HANDLING

       Remote  (server)  pathnames all need to be absolute paths, starting with a slash (/).  The sole exception
       is new_path for the mv and link commands, which if it is not absolute is taken  to  be  relative  to  the
       old_path  minus  the final component.  Similarly, if new_path ends in a slash then the final component of
       old_path will be appended.

       For the put command, except when --tar or --diff is specified, if the remote_path ends in  a  slash  then
       the final (filename) component of local_file will be appended to the final pathname.

CONFIG FILE

       Kup  checks  the  presence of $HOME/.kuprc and can load the host and rsh parameters from the config file.
       The environment variables KUP_HOST and KUP_RSH will override the values set in this config file.

       SAMPLE $HOME/.kuprc:

              host = user@kup.kernel.org
              rsh  = /usr/bin/ssh -a -x -k -T

AUTHOR

       Written by H. Peter Anvin <hpa@zytor.com>.

       Copyright © 2011 Intel Corporation

       This program is free software; you can redistribute it and/or modify  it  under  the  terms  of  the  GNU
       General  Public  License  as  published  by  the  Free Software Foundation, Inc.; either version 2 of the
       License, or (at your option) any later version; incorporated herein by reference.  There is NO  warranty;
       not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

SEE ALSO

       git(1), ssh(1), gzip(1), bzip2(1), xz(1).