chiark
/
gitweb
/
~ianmdlvl
/
dgit.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
167be8c
)
git-debrebase: wip
author
Ian Jackson
<ijackson@chiark.greenend.org.uk>
Sun, 9 Jul 2017 13:37:10 +0000
(14:37 +0100)
committer
Ian Jackson
<ijackson@chiark.greenend.org.uk>
Sat, 16 Jun 2018 11:25:49 +0000
(12:25 +0100)
git-debrebase
patch
|
blob
|
history
diff --git
a/git-debrebase
b/git-debrebase
index 5fa62b55b848e927556717379897f27df1401edd..e5e92038fb94a0466f9cdc5d356c70b3dfbdf862 100755
(executable)
--- a/
git-debrebase
+++ b/
git-debrebase
@@
-176,8
+176,26
@@
sub get_differs ($$) {
}
if ($differs & D_PAT_OTH) {
}
if ($differs & D_PAT_OTH) {
+ my $mode;
+ $differs &= ~D_PAT_OTH;
+ my $pat_oth = sub {
+ $differs |= D_PAT_OTH;
+ no qw(exiting); last;
+ };
$rundiff([qw(--name-status)], ':debian/patches', sub {
$rundiff([qw(--name-status)], ':debian/patches', sub {
-
+ no warnings qw(exiting);
+ if (!defined $mode) {
+ $mode = $f; next;
+ } elsif ($mode eq 'A' && $f !~ m/^\w+\.series$/) {
+ } elsif ($mode eq 'M' && $f eq 'series') {
+ my $x_s = git_cat_file "$x:debian/patches/series", 'blob';
+ my $y_s = git_cat_file "$y:debian/patches/series", 'blob';
+ chomp $x_s; $x_s .= "\n";
+ $pat_oth->() unless $x_s = substr($y_s, 0, length $x_s);
+ } else {
+ $pat_oth->();
+ }
+ $mode = undef;
});
});