gbp-pq(1)


NAME

   gbp-pq - Manage quilt patches on patch queue branches in git

SYNOPSIS

   gbp pq [ --version ] [ --help ] [ --verbose ] [ --color=[auto|on|off] ]
   [ --color-scheme=COLOR_SCHEME ] [ --[no-]patch-numbers ] [ --patch-num-
   format=format  ]  [  --[no-]renumber  ]  [  --topic=topic  ]  [ --time-
   machine=num ] [ --[no-]drop ] [ --force  ]  [  --meta-closes=bug-close-
   tags    ]    [   --meta-closes-bugnum=bug-number-format   ]   [   --pq-
   from=[DEBIAN|TAG] ] [  --upstream-tag=tag-format  ]  drop  |  export  |
   import | rebase | switch

DESCRIPTION

   gbp  pq  helps  one to manage quilt patches in Debian packages that are
   maintained with gbp. This is especially useful with packages using  the
   3.0  (quilt)  source  format.  With  gbp pq, you can maintain the quilt
   patches that should be applied to a package on a separate branch called
   patch-queue  branch.  So  if  your  Debian package lives on master, the
   associated patch-queue branch will be called patch-queue/master.

   See
   <URL:https://honk.sigxcpu.org/piki/development/debian_packages_in_git/>
   for example workflows.

ACTIONS

   import Create  a   patch   queue   branch   from   quilt   patches   in
          debian/patches/  that  are  listed in debian/patches/series. The
          patches must apply without fuzz.

   export Export the patches on the patch-queue branch associated  to  the
          current  branch into a quilt patch series in debian/patches/ and
          update the series file.

   rebase Switch to the  patch-queue  branch  associated  to  the  current
          branch and rebase it against the current branch.

   drop   Drop  (delete) the patch queue associated to the current branch.
          So if you're on  branch  foo,  this  would  drop  branch  patch-
          queue/foo.

   apply  Add  a  single patch to the patch-queue similar to using git-am.
          Use --topic if you want the patch to appear in a separate subdir
          when exporting the patch queue using export. This can be used to
          separate upstream patches from Debian specific patches.

   switch Switch to the patch-queue branch  if  on  the  base  branch  and
          switch to base branch if on patch-queue branch.

OPTIONS

   --version
          Print   version  of  the  program,  i.e.  version  of  the  git-
          buildpackage suite

   -v

   --verbose
          Verbose execution

   -h

   --help Print help and exit

   --color=[auto|on|off]
          Whether to use colored output.

   --color-scheme=COLOR_SCHEME
          Colors to use in output (when color is enabled). The format  for
          COLOR_SCHEME  is  '<debug>:<info>:<warning>:<error>'.  Numerical
          values and color names are  accepted,  empty  fields  imply  the
          default color. For example, --git-color-scheme='cyan:34::' would
          show debug messages in cyan, info messages  in  blue  and  other
          messages in default (i.e. warning and error messages in red).

   --[no-]patch-numbers
          Whether or not the patch files should be prefixed with a number.
          The default is to  export  patches  with  patch  numbers.  Note,
          however,  that  this  normally  affects  patches whose names are
          automatically generated, and has no effect on exporting  patches
          which  have  a  Gbp[-Pq]:  Name tag, since the name specified is
          preserved unless the --renumber option is used.

   --patch-num-format=format
          The format specifier for  patch  number  prefixes.  The  default
          format is '%04d-'.

   --[no-]renumber
          Whether  or  not  to  renumber  patches  exported from the patch
          queue, instead of preserving numbers specified in  Gbp-Pq:  Name
          tags.  The  default  is  not  to  renumber  patches. Useful when
          patches need to be renamed  for  the  sake  of  uniformity.  For
          example,  using  --renumber  with  --no-patch-num will strip all
          numeric prefixes from exported patches.

   --topic=topic
          Topic to use when importing a single patch

   --time-machine=NUM
          When importing a patch queue fails, go back commit-by-commit  on
          the current branch to check if the patch-queue applies there. Do
          this at most NUM times. This can be useful  if  the  patch-queue
          doesn't  apply  to  the current branch HEAD anymore, e.g.  after
          importing a new upstream version.

   --[no-]drop
          Whether to automatically drop (delete) the  patch  queue  branch
          after a successful export

   --force
          In case of import, import even if the patch-queue branch already
          exists and overwrite its content with debian/patches.

   --meta-closes=bug-close-tags
          What meta tags to look for to generate  a  commit  message  when
          using  export  --commit.   The default is 'Closes|LP' to support
          Debian and Launchpad.

   --meta-closes-bugnum=bug-number-format
          What regular expression should be used  to  parse  out  the  bug
          number   when   using   export   --commit.    The   default   is
          '(?:bug|issue)?\#?\s?\d+'.  See gbp-dch(1)> for details.

   --pq-from=[DEBIAN|TAG]
          How to find the starting point for the  patch  queue  base.  The
          options  are DEBIAN, that will use the Debian branch as the base
          for  the  patch  queue  branch,  and  TAG,  that  will  use  the
          corresponding upstream tag as a base for the patch queue branch.

          This is only needed if your upstream branch is not merged in the
          Debian branch.  The default is DEBIAN.

   --upstream-tag=TAG-FORMAT
          Use this tag format when looking for tags of upstream  versions,
          default is upstream/%(version)s.

TAGS

   When  exporting  patches from a patch-queue branch, gbp pq will look at
   the patch header for special tags it recognizes. All tags need to start
   at  the  first  column  and  require  at least one whitespace after the
   colon.

   Gbp[-Pq]: Ignore
          Ignores the commit, no patch is generated out of it.

   Gbp[-Pq]: Name name
          The name to use for the patch when running

          gbp pq export
          If unset, it will be formatted like git am would format it.

   Gbp[-Pq]: Topic topic
          Moves the patch into a subdir called topic when running

          gbp pq export
          This allows for some structure below debian/patches.

   Gbp-Pq-Topic: topic
          Deprecated: use Gbp[-Pq]: Topic topic instead.

SEE ALSO

   gbp-buildpackage(1)>, dpkg-source(1), quilt(1), gbp.conf(5)>

AUTHOR

   Guido Guenther <agx@sigxcpu.org>

                           31 December 2016                      GBP-PQ(1)





Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.





Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.


Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.





Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.


Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.





Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.


Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.