From: Ian Jackson Date: Thu, 22 Aug 2013 13:00:12 +0000 (+0100) Subject: support _multi.changes X-Git-Tag: debian/0.4_pre1~8 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=dgit.git;a=commitdiff_plain;h=e4ff2dddf705d2025b5cf03d1af2ef9161ed54f4 support _multi.changes --- diff --git a/dgit b/dgit index eb263b10..d61cea73 100755 --- a/dgit +++ b/dgit @@ -772,12 +772,18 @@ sub dopush () { $dsc->{$ourdscfield} = rev_parse('HEAD'); $dsc->save("../$dscfn.tmp") or die $!; if (!$changesfile) { - my $pat = "${package}_c$version_*.changes"; - my @cs = glob "../$pat"; - fail "failed to find unique changes file". - " (looked for $pat in ..); perhaps you need to use dgit -C" - unless @cs==1; - ($changesfile) = @cs; + my $multi = "${package}_${cversion}_multi.changes"; + if (stat $multi) { + $changesfile = $multi; + } else { + $!==&ENOENT or die "$multi: $!"; + my $pat = "${package}_${cversion}_*.changes"; + my @cs = glob "../$pat"; + fail "failed to find unique changes file". + " (looked for $pat in ..); perhaps you need to use dgit -C" + unless @cs==1; + ($changesfile) = @cs; + } } my $tag = debiantag($dversion); if (!check_for_git()) { diff --git a/dgit.1 b/dgit.1 index e0a10ef9..1f5fd84f 100644 --- a/dgit.1 +++ b/dgit.1 @@ -321,7 +321,8 @@ Can be repeated as necessary. .BI -C changesfile Specifies the .changes file which is to be uploaded. By default dgit push looks for single .changes file in the parent directory whose -filename suggests it is for the right package and version. +filename suggests it is for the right package and version - or, +if there is a _multi.changes file, dgit uses that. .TP .BI --existing-package= package dgit push needs to canonicalise the suite name. But currently