summaryrefslogtreecommitdiff
path: root/git-debrebase
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2018-08-10 14:28:50 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2018-08-10 14:32:35 +0100
commitdfc092e0ec3d932e51a071000519477d0e33525c (patch)
treed0a06b020838dbec7c1216d4cfa44c62b3bfd353 /git-debrebase
parente019247f462f1580abe05ec3c0e7724781a73096 (diff)
git-debrebase: Make read_tree_upstream global (nfc)
Save debian/ explicitly. This is a bit annoying. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Diffstat (limited to 'git-debrebase')
-rwxr-xr-xgit-debrebase18
1 files changed, 10 insertions, 8 deletions
diff --git a/git-debrebase b/git-debrebase
index 1a79a28..f4602d5 100755
--- a/git-debrebase
+++ b/git-debrebase
@@ -261,6 +261,14 @@ sub read_tree_debian ($) {
rm_subdir_cached 'debian/patches';
}
+sub read_tree_upstream ($) {
+ my ($treeish) = @_;
+ my $save = cmdoutput @git, qw(write-tree --prefix=debian/);
+ runcmd @git, qw(read-tree), $treeish;
+ read_tree_subdir 'debian', $save;
+ rm_subdir_cached 'debian/patches';
+};
+
sub make_commit ($$) {
my ($parents, $message_paras) = @_;
my $tree = cmdoutput @git, qw(write-tree);
@@ -873,12 +881,6 @@ sub walk ($;$$$) {
my $rewriting = 0;
- my $read_tree_upstream = sub {
- my ($treeish) = @_;
- runcmd @git, qw(read-tree), $treeish;
- read_tree_debian($build);
- };
-
$#upp_cl = $upp_limit if defined $upp_limit;
my $committer_authline = calculate_committer_authline();
@@ -906,7 +908,7 @@ sub walk ($;$$$) {
if ($method eq 'Debian') {
read_tree_debian($cltree);
} elsif ($method eq 'Upstream') {
- $read_tree_upstream->($cltree);
+ read_tree_upstream($cltree);
} elsif ($method eq 'StartRewrite') {
$rewriting = 1;
next;
@@ -919,7 +921,7 @@ sub walk ($;$$$) {
confess unless $rewriting;
my $differs = (get_differs $build, $cltree);
next unless $differs & D_UPS;
- $read_tree_upstream->($cltree);
+ read_tree_upstream($cltree);
push @parents, map { $_->{CommitId} } @{ $cl->{OrigParents} };
} else {
confess "$method ?";