Package: dgit Version: 4.2 Severity: wishlist Hello,
In my mind, the command
% dgit push-source unstable
ought to be as closely analogous as we can make it to the (as yet)
fictional command
% git push ftp-master HEAD:master
One important part of rendering these commands analogous is that
push-source takes care of preparing the _source.changes. While `dgit
push` requires the user to run two commands -- build and then push --
`dgit push-source` is a single-step operation, just like `git push`.
A present point of disanalogy is that `git push` operates on git HEAD
alone, and will work no matter the state of the working tree. By
contrast, `dgit push-source` requires a clean working tree because it
needs to invoke dpkg-source on a clean tree.
It would be better if `dgit push-source` could operate on HEAD alone, no
matter the state of the working tree. That would render it closer to
pure `git push`. Perhaps build_source() could set up a private git
worktree and invoke dpkg-source on that -- though we need to think about
whether `dgit build-source` too should operate only on HEAD, rather than
the working tree as at present.
(This change seems more appropriate now that build_source() uses
dpkg-source instead of dpkg-buildpackage; working trees are for real
builds, and are overkill for packing up source code to update archives.)
--
Sean Whitton
signature.asc
Description: PGP signature

