Provided by: git-ubuntu_1.1-1_all bug

NAME

       git-ubuntu-merge - perform an Ubuntu merge of a source package in a Git repository

SYNOPSIS

       git  ubuntu merge [--bug <bug>] [--release <release>] [-d | --directory <directory>] [-f |
       --force] [--tag-only] start|finish <commitish> [<onto>]

DESCRIPTION

       Ubuntu packages often have changes relative to their Debian  bases,  referred  to  as  the
       "Ubuntu  delta".   git  ubuntu merge assists with performing an Ubuntu merge, by replaying
       the Ubuntu delta on a newer version from Debian as a git-rebase(1).  Once an Ubuntu  merge
       has  been performed using this workflow, future merges can be simple rebases.  In the most
       general case, an Ubuntu merge is begun  with  `git  ubuntu  merge  start  pkg/ubuntu/devel
       pkg/debian/sid`   and   finished   with   `git   ubuntu   merge   finish  pkg/ubuntu/devel
       pkg/debian/sid`.

       The brief outline of the merge workflow supported by git ubuntu merge is:

           Obtain git tree with git ubuntu clone(1).

           Split the current Ubuntu delta  into  a  sequence  of  logical  commits  suitable  for
           rebasing.

           Rebase the logical Ubuntu delta onto the new Debian version.

           Build   and   test   the  resulting  source  package  with  git  ubuntu  build(1)  and
           autopkgtest(1).

           Reconstruct the debian/changelog for the new source package.

           Update the metadata for the new source package, such as the maintainer.

           Upload the resulting source package to the Ubuntu archive.

       A      more      extensive      discussion      of      the      workflow      is       at
       ⟨https://wiki.ubuntu.com/UbuntuDevelopment/Merging/GitWorkflow#Detailed_workflow⟩

OPTIONS

       start | finish
           The  step  of  the  merge.   When  "start"  is  specified,  the  current delta will be
           reconstructed and HEAD will point to the result.   When  "finish"  is  specified,  the
           debian/changelog  will be reconstructed and package metadata will be updated.  "start"
           must be run before "finish".

       --bug <bug>
           When passed to the start step,  the  tags  created  will  be  under  lp<bug>/  in  the
           repository.   When passed to the finish step, the Lauchpad bug <bug> will be closed by
           the resulting debian/changelog.

       --release <release>
           The <release>  to  use  in  the  final  changelog.   If  not  specified,  the  current
           development release is assumed.

       -d <directory>, --directory <directory>
           The  local directory to perform the merge in.  If not specified, the current directory
           is used.

       -f | --force
           Overwrite any tags, if they already exist.

       --tag-only
           In some cases, the full workflow is not desired.  When this flag is set, only the tags
           for "old/ubuntu", "old/debian" and "new/debian" are created.

       <commitish>
           A Git commitish indicating the current Ubuntu changes to merge to Debian.

       [<onto>]
           A  Git  commitish  indicating  the  new Debian version to merge to.  If not specified,
           "debian/sid" is assumed.  If a local branch with name <onto> does not exist,  it  will
           be created from the remote-tracking branch "pkg/<onto>".

EXIT STATUS

       git  ubuntu  merge  exits with status 0 if the command completes successfully.  git ubuntu
       merge exits with nonzero exit status on errors.

REPORTING BUGS

       Report bugs at ⟨https://bugs.launchpad.net/git-ubuntu⟩ .

SEE ALSO

       git-rebase(1), git-ubuntu-clone(1), git-ubuntu-build(1), autopkgtest(1)

GIT-UBUNTU

       Part of the git-ubuntu(1) suite