[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ next ]
svn-inject will do the initial checkout for you. If you need another working copy, run
svn co protocol://repository-base-url/yourpackage
Change to your trunk directory and run:
svn-buildpackage -us -uc -rfakeroot
You may recognice the options above -- they are passed directly to the build command (dpkg-buildpackage by default). Normaly, the build is done in another directory (exporting the source with cp-la-like method). If you wish the resulting packages to be placed in the directory above, use the --svn-move option. To run Lintian after the build, use --svn-lintian option. More options are described in the manpage (svn-buildpackage, Section 5.2).
Every time when you add or modify something, svn-buildpackage won't let you proceed unless suspicious files are in the clean state (unless you use the --svn-ignore switch). You use the commands described in Basic svn usage, Section 2.2 to register the new files (or move or delete the old ones) and commit the changes to the repository.
Upgrading with new upstream version normaly happens in two steps:
the current tree in the upstream branch is upgraded with the source from the new upstream package (the old version is kept in repository in branches/upstream/oldVersion).
The version in trunk/ becomes upgraded by merging the changes between the upstream versions into the trunk/ directory.
The script svn-upgrade (formerly svn-uupdate) does both things for you and also creates a new changelog entry. The first step is done internaly by using a third party script (svn_load_dirs, see Subversion book for documentation), the second step is done with the merge command of svn. Just run svn-upgrade from you local working directory (which corresponds the trunk/ checkout product).
After running svn-upgrade some files may be in conflicting state. This is naturaly happens if you have modified some files in the upstream package and now upstream did something similar on the same positions so svn merge was confused.
When svn-upgrade complains about files in conflicting state, fix them manualy. When done, use the svn resolved command to mark them as clean and svn commit to update the repository.
When you are ready to upload a new revision of your package, everything builds fine, the changelog is cleaned up and the package is tested, you can do the final build and tag the end version. To do so, add --svn-tag switch and after the package is built, it will be tagged (by creating a copy of the trunk/ directory as said above).
[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ next ]
svn-buildpackage - maintaining Debian packages with Subversion
$LastChangedDate: 2005-09-23 16:17:33 +0200 (Fr, 23 Sep 2005) $