Re: Workflow with debian/ in VCS
Nikolaus Rath <Nikolaus@rath.org> writes:
> I'm having trouble coming up with a decent workflow for creating
> packages. I am managing the debian/ directory in a mercurial
> repository,
Contrary to other replies in this thread, I find that to be a cleaner
setup: manage just ‘debian/’ in a VCS repository, and build packages
with ‘${VCS}-buildpackage’.
> and at the moment my steps for releasing a new version are:
>
> 1. Download the new upstream source
> 2. Rename to .orig.tar.bz2, extract, rename created directory
These two steps should be automated with ‘uscan(1)’. Configure it for
your package with the ‘debian/watch’ file.
> 3. Copy debian/ from repo into extracted directory
> 5. Run debuild
These two steps are what ‘${VCS}-buildpackage’ does. You don't have to
have the build artefacts cluttering up your working tree; it does its
work elsewhere.
In my case, ‘bzr-buildpackage --source --merge’ creates a Debian source
package merging my ‘debian/’ with the upstream source, extracted as
needed from the tarball retrieved via ‘uscan’.
> 6. Copy debian back into repo
Obviated by having the repositories separate, and automatically combined
when needed.
> 7. Commit changes
Yay VCS!
> Somehow this seems overly complicated, and I think there is probably a
> more automated way to do this. I have looked into uscan and uupdate, but
> neither of them seem to work very well with a VCS managed debian/.
[…]
> Am I missing a tool? Or is a bad idea to try to manage debian/ in a
> VCS?
It's good, and the ‘${VCS}-buildpackage’ tools specifically take that
workflow into account.
Hope that helps.
--
\ “A child of five could understand this. Fetch me a child of |
`\ five.” —Groucho Marx |
_o__) |
Ben Finney
Reply to: