our ($dscdata,$dscurl,$dsc,$dsc_checked,$skew_warning_vsn);
-sub runcmd {
- debugcmd "+",@_;
- $!=0; $?=-1;
- failedcmd @_ if system @_;
-}
-
sub act_local () { return $dryrun_level <= 1; }
sub act_scary () { return !$dryrun_level; }
}
rmtree('.git/objects');
symlink '../../../../objects','.git/objects' or die $!;
- setup_gitattrs(1);
+ ensuredir '.git/info';
+ open GA, "> .git/info/attributes" or die $!;
+ print GA "* $negate_harmful_gitattrs\n" or die $!;
+ close GA or die $!;
}
sub git_write_tree () {
open GAO, "> $af.new" or die $!;
print GAO <<END or die $!;
* dgit-defuse-attrs
-[attr]dgit-defuse-attrs -text -eol -crlf -ident -filter
+[attr]dgit-defuse-attrs $negate_harmful_gitattrs
# ^ see GITATTRIBUTES in dgit(7) and dgit setup-new-tree in dgit(1)
END
my $gai = open_gitattrs();
#
return $dgitview unless defined $archive_hash;
+ return $dgitview if deliberately_not_fast_forward();
printdebug "splitbrain_pseudomerge...\n";
unless $oldmode =~ m/^10/;
} else {
# creation
- die "non-default mode or type\n"
- unless $newmode =~ m/^100644$/ ||
- $oldmode =~ m/^100644$/;
+ die "creation with non-default mode\n"
+ unless $newmode =~ m/^100644$/ or
+ $newmode =~ m/^120000$/;
}
};
if ($@) {