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 (from parent 1:
c67e1d4
)
git-debrebase: capture breakwater tip
author
Ian Jackson
<ijackson@chiark.greenend.org.uk>
Thu, 9 Feb 2017 00:16:47 +0000
(
00:16
+0000)
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 6542c65cfee53f82197a336a76465689ead3772f..fbb97329d549328ef775fc087e528904d462e872 100755
(executable)
--- a/
git-debrebase
+++ b/
git-debrebase
@@
-343,6
+343,7
@@
sub launder ($$$) {
mkdir $rd or $!==EEXIST or die $!;
my $current_method;
foreach my $cl (qw(Debian), (reverse @deb_cl),
mkdir $rd or $!==EEXIST or die $!;
my $current_method;
foreach my $cl (qw(Debian), (reverse @deb_cl),
+ { SpecialMethod => 'RecordBreakwaterTip' },
qw(Upstream), (reverse @ups_cl)) {
if (!ref $cl) {
$current_method = $cl;
qw(Upstream), (reverse @ups_cl)) {
if (!ref $cl) {
$current_method = $cl;
@@
-358,6
+359,10
@@
sub launder ($$$) {
} elsif ($method eq 'StartRewrite') {
$rewriting = 1;
next;
} elsif ($method eq 'StartRewrite') {
$rewriting = 1;
next;
+ } elsif ($method eq 'RecordBreakwaterTip') {
+ last if $wantdebonly;
+ $breakwater = $build;
+ next;
} elsif ($method eq 'DgitImportDebianUpdate') {
$read_tree_debian->($cltree);
$rm_tree_cached(qw(debian/patches));
} elsif ($method eq 'DgitImportDebianUpdate') {
$read_tree_debian->($cltree);
$rm_tree_cached(qw(debian/patches));
@@
-396,7
+401,7
@@
sub launder ($$$) {
map { $wantdebonly ? "$_:debian" : $_ },
$input, $build;
map { $wantdebonly ? "$_:debian" : $_ },
$input, $build;
- return
$build
;
+ return
($build, $breakwater)
;
}
sub get_head () { return git_rev_parse qw(HEAD); }
}
sub get_head () { return git_rev_parse qw(HEAD); }
@@
-408,8
+413,9
@@
sub update_head ($$) {
sub cmd_launder () {
my $old = get_head();
sub cmd_launder () {
my $old = get_head();
- my $got = launder $old, 0, undef, 0;
- update_head $old, $new, 'launder'; # no tree changes!
+ my ($tip,$breakwater) = launder $old, 0, undef, 0;
+ update_head $old, $tip, 'launder'; # no tree changes!
+ printf "# breakwater tip:\n%s\n", $breakwater;
}
my $toplevel = runcmd @git, qw(rev-parse --show-toplevel);
}
my $toplevel = runcmd @git, qw(rev-parse --show-toplevel);