summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2013-08-17 17:02:33 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2013-08-17 17:02:33 +0100
commitc49ed487a8eba41e990e483dc1851c817ed5237a (patch)
treedf2cbbb1b44059a6417f8cc2e77c5863a09a5a42
parent253d72055689c3dafcb32c2090ae1739a02a3105 (diff)
clean things
-rwxr-xr-xdgit5
-rw-r--r--dgit.19
2 files changed, 9 insertions, 5 deletions
diff --git a/dgit b/dgit
index b185124..f724369 100755
--- a/dgit
+++ b/dgit
@@ -42,6 +42,7 @@ our (@git) = qw(git);
our (@dget) = qw(dget);
our (@dput) = qw(dput);
our (@debsign) = qw(debsign);
+our (@cleancmd) = qw(debian/rules clean);
our $keyid;
our $debug = 0;
@@ -584,7 +585,7 @@ sub commit_quilty_patch () {
sub dopush () {
print DEBUG "actually entering push\n";
- runcmd qw(debian/rules clean);
+ runcmd @cleancmd;
my $clogp = parsechangelog();
$package = $clogp->{Source};
my $dscfn = "${package}_$clogp->{Version}.dsc";
@@ -761,6 +762,8 @@ sub parseopts () {
push @$om, $2;
} elsif (m/^--existing-package=(.*)/s) {
$existing_package = $1;
+ } elsif (m/^--clean-command=(.*)/s) {
+ @cleancmd = split /\s+/, $1;
} else {
die "$_ ?";
}
diff --git a/dgit.1 b/dgit.1
index 97e63ed..ad4be5f 100644
--- a/dgit.1
+++ b/dgit.1
@@ -52,7 +52,8 @@ Tagging and signing should be left to dgit push.
does an `upload', pushing the current HEAD to the archive (as a source
package) and to dgit-repos (as git commits). This also involves
making a signed git tag, and signing the files to be uploaded to the
-archive.
+archive. dgit push does a
+.BR "debian/rules clean" .
.SH WORKFLOW - SIMPLE
It is always possible with dgit to clone or fetch a package, make
changes in git (using git-commit) on the suite branch
@@ -232,9 +233,9 @@ there is no way to ask the archive to do this without knowing the
name of an existing package. Without --new we can just use the
package we are trying to push. But with --new that will not work, so
we guess that
-.B dpkg
-exists in the target suite. If it doesn't, you can use this option to
-specify a package which does. If the suite is empty, bad luck.
+.TP
+.BI --clean-command= "cmd arg arg"
+dgit push needs to clean the tree to make sure the
.SH CONFIGURATION
dgit looks at the following git config keys to control its behaviour.
You may set them with git-config (either in system-global or per-tree