summaryrefslogtreecommitdiff
path: root/git-debrebase
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2017-07-07 11:49:22 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2018-06-16 12:25:49 +0100
commit966d36a2520eb2c117d05e7a8cda8865fd46d2d2 (patch)
tree8e39f319b16ac077e7efca653fcf7b4c37ffe703 /git-debrebase
parent842f62c97bc4d78cfda3ed76d3335bafd20e9fd0 (diff)
git-debrebase: wip
Diffstat (limited to 'git-debrebase')
-rwxr-xr-xgit-debrebase36
1 files changed, 36 insertions, 0 deletions
diff --git a/git-debrebase b/git-debrebase
index e3835e3..b2839d5 100755
--- a/git-debrebase
+++ b/git-debrebase
@@ -145,6 +145,42 @@ our $rd = ".git/git-debrebase";
our $ud = "$rd/work";
our @git = qw(git);
+sub get_differs ($$) {
+ my ($x,$y) = @_;
+ # This resembles quiltify_trees_differ, in dgit, a bit. But: we
+ # don't care about modes, or dpkg-source-unrepresentable changes,
+ # and we don't need the plethora of different modes.
+
+ my $differs = 0;
+
+ my $f;
+ my $rundiff = sub {
+ my ($sfx, $fn) = @_;
+ my @cmd = (@git, qw(diff-tree -z --name-only));
+ push @cmd "$_:$sfx" foreach $x, $y;
+ my $diffs = cmdoutput @bcmd, $x, $y;
+ foreach $f (split /\0/, $diffs) { $fn->(); }
+ };
+
+ $rundiff('', sub {
+ $differs |= $f eq 'debian' ? D_DEB : D_UPS;
+ });
+
+ if ($differs & D_DEB) {
+ $differs &= ~D_DEB;
+ $rundiff(':debian', sub {
+ $differs |= $f eq 'patches' ? D_PAT_OTH : D_DEB;
+ });
+ }
+
+ if ($differs & D_PAT_OTH) {
+
+
+
+
+ }
+ $f eq '
+
sub commit_pr_info ($) {
my ($r) = @_;
return Data::Dumper->dump([$r], [qw(commit)]);