chiark
/
gitweb
/
~ianmdlvl
/
dgit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
dgit: push-source dies if user tried to include uncommitted changes
[dgit.git]
/
dgit
diff --git
a/dgit
b/dgit
index 7c63b86fd7edf8defcd9706e05b7b70f7d18f632..470c0fd9fde00d1b02d26b93e37530ee1ffc2d80 100755
(executable)
--- a/
dgit
+++ b/
dgit
@@
-292,6
+292,7
@@
sub dgit_privdir () {
sub bpd_abs () {
my $r = $buildproductsdir;
$r = "$maindir/$r" unless $r =~ m{^/};
sub bpd_abs () {
my $r = $buildproductsdir;
$r = "$maindir/$r" unless $r =~ m{^/};
+ return $r;
}
sub branch_gdr_info ($$) {
}
sub branch_gdr_info ($$) {
@@
-4757,6
+4758,8
@@
sub cmd_push {
sub cmd_push_source {
prep_push();
sub cmd_push_source {
prep_push();
+ fail "dgit push-source: --include-dirty/--ignore-dirty does not make".
+ "sense with push-source!" if $includedirty;
if ($changesfile) {
my $changes = parsecontrol("$buildproductsdir/$changesfile",
"source changes file");
if ($changesfile) {
my $changes = parsecontrol("$buildproductsdir/$changesfile",
"source changes file");
@@
-5651,7
+5654,8
@@
sub unpack_playtree_linkorigs ($$) {
my ($upstreamversion, $fn) = @_;
# calls $fn->($leafname);
my ($upstreamversion, $fn) = @_;
# calls $fn->($leafname);
- opendir QFD, bpd_abs();
+ my $bpd_abs = bpd_abs();
+ opendir QFD, $bpd_abs or fail "buildproductsdir: $bpd_abs: $!";
while ($!=0, defined(my $b = readdir QFD)) {
my $f = bpd_abs()."/".$b;
{
while ($!=0, defined(my $b = readdir QFD)) {
my $f = bpd_abs()."/".$b;
{
@@
-6862,7
+6866,7
@@
sub parseopts () {
} elsif (m/^--(gbp|dpm)$/s) {
push @ropts, "--quilt=$1";
$quilt_mode = $1;
} elsif (m/^--(gbp|dpm)$/s) {
push @ropts, "--quilt=$1";
$quilt_mode = $1;
- } elsif (m/^--
ignore
-dirty$/s) {
+ } elsif (m/^--
(?:ignore|include)
-dirty$/s) {
push @ropts, $_;
$includedirty = 1;
} elsif (m/^--no-quilt-fixup$/s) {
push @ropts, $_;
$includedirty = 1;
} elsif (m/^--no-quilt-fixup$/s) {
@@
-7065,6
+7069,9
@@
sub parseopts_late_defaults () {
$need_split_build_invocation ||= quiltmode_splitbrain();
$need_split_build_invocation ||= quiltmode_splitbrain();
+ fail "dgit: --include-dirty is not supported in split view quilt mode"
+ if $split_brain && $includedirty;
+
if (!defined $cleanmode) {
local $access_forpush;
$cleanmode = access_cfg('clean-mode', 'RETURN-UNDEF');
if (!defined $cleanmode) {
local $access_forpush;
$cleanmode = access_cfg('clean-mode', 'RETURN-UNDEF');