chiark / gitweb /
git-debrebase: Stub script to prove config handling works
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 25 Jan 2017 21:25:11 +0000 (21:25 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 16 Jun 2018 11:25:49 +0000 (12:25 +0100)
Tested with
  PATH=$PWD:$PATH git -c wombat.foo.bar=23 -c wombat.foo.bar=37 debrebase

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
git-debrebase [new file with mode: 0755]

diff --git a/git-debrebase b/git-debrebase
new file mode 100755 (executable)
index 0000000..0d9e936
--- /dev/null
@@ -0,0 +1,39 @@
+#!/usr/bin/perl -w
+# git-debrebase
+# Script helping make fast-forwarding histories while still rebasing
+# upstream deltas when working on Debian packaging
+#
+# Copyright (C)2017 Ian Jackson
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+use strict;
+use Memoize;
+
+use Debian::Dgit;
+
+sub cfg ($) {
+    my ($k) = @_;
+    $/ = "\0";
+    my @cmd = qw(git config -z);
+    push @cmd, qw(--get-all) if wantarray;
+    push @cmd, $k;
+    my $out = cmdoutput @cmd;
+    return split /\0/, $out;
+}
+
+memoize('cfg');
+
+use Data::Dumper;
+print Dumper(cfg('wombat.foo.bar'));