From def02420f6d52c96f7f29eac820b01bc1ff52fa4 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Fri, 16 Aug 2013 15:33:30 +0100 Subject: -p option --- dgit | 15 ++++++++++++--- dgit.1 | 7 +++++++ 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/dgit b/dgit index d160e18..a158eef 100755 --- a/dgit +++ b/dgit @@ -432,6 +432,7 @@ sub pull () { sub dopush () { runcmd @git, qw(diff --quiet HEAD); my $clogp = parsechangelog(); + die if defined $package; $package = $clogp->{Source}; my $dscfn = "${package}_$clogp->{Version}.dsc"; stat "../$dscfn" or die "$dscfn $!"; @@ -488,6 +489,7 @@ sub dopush () { sub cmd_clone { my $dstdir; + die if defined $package; if (@ARGV==1) { ($package) = @ARGV; } elsif (@ARGV==2 && $ARGV[1] =~ m#^\w#) { @@ -514,11 +516,16 @@ sub branchsuite () { } sub fetchpullargs () { - my $clogp = parsechangelog(); - $package = $clogp->{Source}; + if (!defined $package) { + my $sourcep = parsecontrol('debian/control'); + $package = $sourcep->{Source}; + } if (@ARGV==0) { $suite = branchsuite(); - $suite ||= $clogp->{Distribution}; + if (!$suite) { + my $clogp = parsechangelog(); + $suite = $clogp->{Distribution}; + } canonicalise_suite(); print "fetching from suite $suite\n"; } elsif (@ARGV==1) { @@ -540,6 +547,7 @@ sub cmd_pull { } sub cmd_push { + die if defined $package; my $clogp = parsechangelog(); $package = $clogp->{Source}; if (@ARGV==0) { @@ -552,6 +560,7 @@ sub cmd_push { } sub cmd_build { + die if defined $package; my $clogp = parsechangelog(); $suite = $clogp->{Distribution}; $package = $clogp->{Source}; diff --git a/dgit.1 b/dgit.1 index 19f3868..51940ca 100644 --- a/dgit.1 +++ b/dgit.1 @@ -107,6 +107,13 @@ for signing the tag and the upload. .BR --no-sign does not sign tags or uploads (meaningful only with push). .TP +.TP +.BI -p package +Specifies that we should process source package +.I package +rather than looking in debian/control. Valid with dgit fetch +and dgit pull, only. +.TP .BI -D Spew debugging information to stderr. .TP -- cgit v1.2.3