table of contents
PRISTINE-LFS(1) | Git | PRISTINE-LFS(1) |
NAME¶
pristine-lfs - store pristine tarballs in Git LFS
SYNOPSIS¶
pristine-lfs [-h|--help]
pristine-lfs [OPTIONS] commit [OPTIONS] (--auto | tarball)
pristine-lfs [OPTIONS] import-dsc [OPTIONS] dsc
pristine-lfs [OPTIONS] checkout [-o outdir] tarball
pristine-lfs [OPTIONS] list
pristine-lfs [OPTIONS] verify tarball
DESCRIPTION¶
pristine-lfs can store pristine upstream tarballs in Git leveraging Git LFS. Instead of storing the potentially large tarballs within the Git repository as blobs, Git LFS only stores specially prepared metadata in the repository, while storing the actual file contents out of band on a Git LFS server.
Using pristine-lfs allows Debian packages to be built entirely using sources in version control, without the need to keep copies of upstream tarballs.
pristine-lfs supports tarballs compressed with any compressor.
Tarball signatures (any files ending with .asc) are committed as they are, without utilising the Git LFS mechanisms.
COMMANDS¶
- pristine-lfs commit [-b BRANCH] [-m MESSAGE] [--force-overwrite] tarball [upstream]
- pristine-lfs commit stores the specified tarball using Git
LFS, and commits its metadata to version control. The pristine-lfs
checkout command can later be used to recreate the original tarball
based on the information stored in Git LFS. The data are not submitted to
the server until git push command is issued.
The upstream parameter is ignored and is supported for compatibility with pristine-tar.
If tarball with a different hash has already been committed, it will only be overwritten if --force-overwrite is specified.
- pristine-lfs import-dsc [-b BRANCH] [-m MESSAGE] [--force-overwrite] [--full] path-to-dsc
- Import tarballs and their signatures from a .dsc file of a Debian
source package.
If --full is specified, also imports the Debian packaging and the .dsc file itself.
If tarball with a different hash has already been committed, it will only be overwritten if --force-overwrite is specified.
- pristine-lfs checkout [-b BRANCH] [-o outdir] [--full] (--auto | tarball)
- Regenerate a copy of the specified tarball using information previously
saved in version control by pristine-lfs commit.
By default, the tarball is placed in the current directory. If outdir is specified, the file is created in that directory.
For compatibility with pristine-tar, tarball can include the path to the output directory; this takes precedence over the outdir option.
If --auto is specified, pristine-lfs will consult a file named debian/changelog, and if it exists, will check out all tarballs associated with the latest version the changelog mentions.
If --full is specified and a .dsc file is requested, also checks the Debian packaging and the .dsc file itself.
- pristine-lfs list [-b BRANCH]
- List tarballs that pristine-lfs is able to checkout from version control.
- pristine-lfs verify [-b BRANCH] tarball
- Verify whether an existing tarball matches the one that has been committed to version control.
OPTIONS¶
- -m MESSAGE, --message=MESSAGE
- Use the given MESSAGE as the commit message for the metadate commits. Applies to commit and import-dsc commands. %s in the commit message is replaced by a comma-separated list of files committed.
- -b BRANCH, --branch BRANCH
- Branch to store Git LFS metadata on.
- -v, --verbose
- Be more verbose.
- --debug
- Show all sorts of debugging information. Implies --verbose.
- -h
- Show this help message and exit.
ENVIRONMENT¶
- TMPDIR
- Specifies a location to place temporary files, other than the default.
SEE ALSO¶
AUTHOR¶
Andrej Shadura <andrew.shadura@collabora.co.uk>
2021-02-22 | 20210222.0 |