PKGKDE-VCS(1) | Debian KDE packaging VCS helper | PKGKDE-VCS(1) |
pkgkde-vcs - a helper tool for Debian pkg-kde VCS repositories.
pkgkde-vcs [-vy] subcommand [ SUBCOMMAND OPTIONS ] [ -- EXTERNAL TOOL OPTIONS ]
pkgkde-git [-vy] subcommand [ SUBCOMMAND OPTIONS ] [ -- EXTERNAL TOOL OPTIONS ]
pkgkde-vcs is a helper tool which aims to simplify a couple of routine tasks associated with packaging management in version control system (VCS) repositories. pkgkde-vcs transparently supports VCSes used by Debian Qt/KDE maintainer groups wrapping various VCS related command sequences into a convenient CLI interface. Please note that this helper enforces the best practises and packaging conventions adopted by Debian Qt/KDE maintainer groups and therefore it should not be considered as a general purpose packaging helper.
pkgkde-vcs should be run from the fully checked out packaging repository of the package it is supposed to act upon. Firstly, it attempts to detect a VCS in use for the particular packaging in the working directory. Please note, that the detection might fail if underlying VCS utilities are not installed. If you want or have to force a specific VCS type, run the command as pkgkde-$vcs, for example pkgkde-git.
If detection is successful, pkgkde-vcs will perform tasks as defined for the specified subcommand (e.g. tag). Different set of subcommands might be defined for each VCS and each of them might accept a different set of SUBCOMMAND OPTIONS (see below). All locally unrecognized subcommand options (or the ones specified as EXTERNAL TOOL OPTIONS after --) will be passed to the external VCS tool(s) which pkgkde-vcs executes to do the job.
pkgkde-vcs accepts a couple of common options which apply to the helper as whole or are common for all VCSes it supports. They should be passed before subcommand in order to be recognized.
Even if pkgkde-vcs does extensive sanity checks before doing anything, an underlying command it executes might still fail. Then pkgkde-vcs will terminate immediately possibly leaving repository in an inconsistent state. It is up to a user to recover from such a failure.
At the moment, pkgkde-vcs supports only Git VCS.
In order to use pkgkde-vcs with Git, git(1) must be available in PATH. Bare Git repositories are not supported and Git repository should be in the fully checked out state (except clone). The following subcommands for Git repositories are supported at the moment:
Repository should be specified relatively to the root of the official pkg-kde repository tree. Once operation is complete, the cloned repository will be put at the same relative location on the local filesystem and update-config (see below) will be executed on it.
For example, in order to clone kde4libs repository from kde-sc, akonadi repository from kde-req and pkg-kde-tools repository from the root tree, execute:
$ pkgkde-git clone kde-req/akonadi
$ pkgkde-git clone pkg-kde-tools
The subcommand will create an annotated Git tag under "debian/" namespace. The subcommand itself does not accept any additional options. All EXTERNAL TOOL OPTIONS (if specified) and will be passed to git tag invocation. It is recommended to sign tags by specifying -s option.
The tag created by pkgkde-vcs tag will meet the following requirements:
For example, a standard pkgkde-vcs tag will execute the following under the hood (assuming version is 1:2.3.4-5 and distribution is experimental):
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, either version 3 of the License, or (at your option) any later version.
Modestas Vainius <modax@debian.org>
2012-05-27 | 0.15 |