X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=dgit.git;a=blobdiff_plain;f=dgit;h=d00ab1f04fc7d61b69f10d03cf0dbf1f18628771;hp=b13b5ed566c74f36d24a96298f59eb5e0ea007aa;hb=e41608c3549b3e34839ad15b2e29607794c1ccd6;hpb=8293f64249970c85187371555ad7bd162a37d695 diff --git a/dgit b/dgit index b13b5ed5..d00ab1f0 100755 --- a/dgit +++ b/dgit @@ -1028,9 +1028,12 @@ sub dsc_files () { map { $_->{Filename} } dsc_files_info(); } -sub is_orig_file ($) { - local ($_) = @_; - m/\.orig(?:-\w+)?\.tar\.\w+$/; +sub is_orig_file ($;$) { + local ($_) = $_[0]; + my $base = $_[1]; + m/\.orig(?:-\w+)?\.tar\.\w+$/ or return 0; + defined $base or return 1; + return $` eq $base; } sub make_commit ($) { @@ -1363,6 +1366,12 @@ sub check_not_dirty () { } } +sub commit_admin ($) { + my ($m) = @_; + progress "$m"; + runcmd_ordryrun_local @git, qw(commit -m), $m; +} + sub commit_quilty_patch () { my $output = cmdoutput @git, qw(status --porcelain); my %adds; @@ -1377,9 +1386,18 @@ sub commit_quilty_patch () { return; } runcmd_ordryrun_local @git, qw(add), sort keys %adds; - my $m = "Commit Debian 3.0 (quilt) metadata"; - progress "$m"; - runcmd_ordryrun_local @git, qw(commit -m), $m; + commit_admin "Commit Debian 3.0 (quilt) metadata"; +} + +sub get_source_format () { + if (!open F, "debian/source/format") { + die $! unless $!==&ENOENT; + return ''; + } + $_ = ; + F->error and die $!; + chomp; + return $_; } sub madformat ($) { @@ -1940,14 +1958,8 @@ our $dscfn; our $fakeeditorenv = 'DGIT_FAKE_EDITOR_QUILT'; sub build_maybe_quilt_fixup () { - if (!open F, "debian/source/format") { - die $! unless $!==&ENOENT; - return; - } - $_ = ; - F->error and die $!; - chomp; - return unless madformat($_); + my $format=get_source_format; + return unless madformat $format; # sigh my @cmd = (@git, qw(ls-files --exclude-standard -iodm));