&dhemail;
&dhfirstname;
&dhsurname;
gbp-import-orig
&dhsection;
gbp-import-origImport an upstream source into a git repository
&gbp-import-orig;
&man.common.options.synopsis;
version[auto|merge|replace]branch_namebranch_nametag-formatgpg-keyidtag-formatpatterncomponent[auto|on|off]filenameurlDESCRIPTION
&gbp-import-orig; imports upstream sources into a &git;
repository. It can import from three sources:
filename: A file in the local
file system. Gzip, bzip2, lzma and xz compressed tar
archives, zip archives and already unpacked source trees are
supported.
url: The tarball is downloaded
from a http
or httpsurl.
This needs the python-request package installed.
: The latest upstream or specified version is
fetched via &uscan; relying on debian/watch.
If the tarballs name is already of the form
package-name_version.orig.tar.gz, the
version information is determined from the tarball's filename,
otherwise it can be given on the command line
via . If the source package
name or version can't be determined, &gbp-import-orig; will
prompt for it unless is given.
The sources are placed on the upstream branch (default:
upstream), tagged and merged onto the
debian branch (default: master). This
is either done using plain git merge
or by creating a new tree that consists of the new
upstream version plus the debian/
directory. The later is used for source format 3.0
(quilt) packages since direct modifications of the upstream
sources are not allowed in that format and so a 1:1 replacement
of the upstream sources is almost always desired. It can
be tweaked via the .
In case of an error &gbp-import-orig; will rollback (undo)
all changes it has done to the repository (see
the option).
OPTIONS
&man.common.options.description;
=versionversion
The upstream version number. With , passed to
uscan as
Merge the upstream branch to the &debian; branch after import
[auto|merge|replace]
How to fold the newly imported upstream source to the
&debian; packaging branch after import.
merge does a
&git; merge leaving you on your own in
case of merge conflict resolution.
replace mode on the
other hand makes the head of the &debian; packaging branch
identical to the newly imported tree but preserves the
content of the debian/ directory
while keeping the current head as well as the newly
imported tree as parents of the generated commit. This is
similar to a merge strategy while
preserving debian/.
The default is auto which
uses replace for 3.0 (quilt) packages
and merge otherwise.
=branch_name
The branch in the &git; repository the upstream sources are put
onto. Default is upstream.
=branch_name
The branch in the &git; repository the &debian; package is being
developed on, default is master. After
importing the new sources on the upstream branch, &gbp-import-orig;
will try to merge the new version onto this branch.
=tag-format
Add tag-format as additional parent to the
commit of the upstream tarball. Useful when upstream uses git and you
want to link to its revision history. The
tag-format can be a pattern similar to
what supports.
GPG sign all created tags.
gpg-keyid
Use this
for gpg signing tags.
tag-format
Use this tag format when tagging upstream versions,
default is upstream/%(version)s.
msg-format
Use this format string for the commit message when importing upstream
versions, default is
New upstream version %(version)s.
pattern
Filter out files glob-matching
. This
option can be given multiple times.
COMPONENT
When importing the upstream tarball also look for an additional tarball
with component name COMPONENT. E.g. in
hello-debhelper_1.0.orig-foo.tar.gz
the component would be foo. The additional
tarball is expected to be in the same directory than the upstream tarball
and to use the same compression type.
Using additional original tarballs is a feature of the 3.0
(quilt) source format. See
the dpkg-source manpage for
details. This is currently considered an experimental
feature and might change incompatibly.
Generate pristine-tar delta file.
If using a filter, also filter the files out of the tarball
passed to pristine-tar.
Whether to create and keep a symlink from the upstream tarball
to a &debian; policy conformant upstream tarball name located in
../.
This is a good idea if not using pristine-tar
since it avoids creating a new tarball with a different md5sum.
Run cmd after the import. The
hook gets the following environment variables passed:
GBP_BRANCH
The name of the Debian packaging branch
GBP_TAG
The name of the just created upstream tag
GBP_UPSTREAM_VERSION
The just imported upstream version
GBP_DEBIAN_VERSION
The Debian version of the package with a Debian
revision of '-1'
Run cmd after the import. This can be useful
to e.g. convert or remove certain files prior to the import.
The hook gets passed the following environment variables:
GBP_TMP_DIR
The temporary directory the tarballs are unapcked into.
GBP_GIT_DIR
The directory of the git repository where the tarball
will be imported into.
Use &uscan; to fetch new upstream version. The version can be
specified with
Run command interactively, i.e. ask package name and version if
needed.
Rollback changes in case of an error.
[auto|on|off]
Whether upstream signatures should be imported as well (when
using pristine-tar). no turns this
off completely while yes always tries to
import a signature (which can be useful if you want to fail if
e.g. &uscan; did not fetch a signature). The default
auto means to import a signature file if
present but do nothing otherwise.
EXAMPLES
Download and import a new upstream version using the information from debian/watch
&gbp-import-orig; --uscan
Fetch tarball from an URL
&gbp-import-orig; https://debian.example.com/sid/upstream-tarball-0.1.tar.gz
Import a local tarball
&gbp-import-orig; ../upstream-tarball-0.1.tar.gz
&man.gbp.config-files;
SEE ALSO,
,
,
,
,
uscan1,
&man.seealso.common;
AUTHOR
&dhusername; &dhemail;