From 72dbbe3a2cc3550a2aaaf226fd561c0d5064b5b4 Mon Sep 17 00:00:00 2001
From: joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>
Date: Sat, 27 Jan 2007 23:56:17 +0000
Subject: [PATCH] * Make gitorigin_branch and gitmaster_branch configurable via
 the setup   file. Closes: #408599

---
 IkiWiki.pm         |  2 ++
 IkiWiki/Rcs/git.pm | 12 +++++-------
 debian/changelog   |  4 +++-
 doc/ikiwiki.setup  |  2 ++
 4 files changed, 12 insertions(+), 8 deletions(-)

diff --git a/IkiWiki.pm b/IkiWiki.pm
index 42d607b0d..10d178f3e 100644
--- a/IkiWiki.pm
+++ b/IkiWiki.pm
@@ -56,6 +56,8 @@ sub defaultconfig () { #{{{
 	wrappermode => undef,
 	svnrepo => undef,
 	svnpath => "trunk",
+	gitorigin_branch => "origin",
+	gitmaster_branch => "master",
 	srcdir => undef,
 	destdir => undef,
 	pingurl => [],
diff --git a/IkiWiki/Rcs/git.pm b/IkiWiki/Rcs/git.pm
index ad829221c..7f33148e3 100644
--- a/IkiWiki/Rcs/git.pm
+++ b/IkiWiki/Rcs/git.pm
@@ -8,8 +8,6 @@ use open qw{:utf8 :std};
 
 package IkiWiki;
 
-my $origin_branch    = 'origin';            # Git ref for main repository
-my $master_branch    = 'master';            # working branch
 my $sha1_pattern     = qr/[0-9a-fA-F]{40}/; # pattern to validate Git sha1sums
 my $dummy_commit_msg = 'dummy commit';      # message to skip in recent changes
 
@@ -112,8 +110,8 @@ sub _merge_past ($$$) { #{{{
 
 		# Switch to throw-away branch for the merge operation.
 		push @undo, sub {
-			if (!run_or_cry('git-checkout', $master_branch)) {
-				run_or_cry('git-checkout','-f',$master_branch);
+			if (!run_or_cry('git-checkout', $config{gitmaster_branch})) {
+				run_or_cry('git-checkout','-f',$config{gitmaster_branch});
 			}
 		};
 		run_or_die('git-checkout', $branch);
@@ -125,7 +123,7 @@ sub _merge_past ($$$) { #{{{
 		# _Silently_ commit all modifications in the current branch.
 		run_or_non('git-commit', '-m', $message, '-a');
 		# ... and re-switch to master.
-		run_or_die('git-checkout', $master_branch);
+		run_or_die('git-checkout', $config{gitmaster_branch});
 
 		# Attempt to merge without complaining.
 		if (!run_or_non('git-pull', '--no-commit', '.', $branch)) {
@@ -287,7 +285,7 @@ sub git_sha1 (;$) { #{{{
 sub rcs_update () { #{{{
 	# Update working directory.
 
-	run_or_cry('git-pull', $origin_branch);
+	run_or_cry('git-pull', $config{gitorigin_branch});
 } #}}}
 
 sub rcs_prepedit ($) { #{{{
@@ -337,7 +335,7 @@ sub rcs_commit ($$$;$$) { #{{{
 	$message = possibly_foolish_untaint($message);
 	if (run_or_non('git-commit', '-m', $message, '-i', $file)) {
 		unlockwiki();
-		run_or_cry('git-push', $origin_branch);
+		run_or_cry('git-push', $config{gitorigin_branch});
 	}
 
 	return undef; # success
diff --git a/debian/changelog b/debian/changelog
index 6234668a7..5903192f3 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -5,8 +5,10 @@ ikiwiki (1.41) UNRELEASED; urgency=low
     crashing.
   * Added smileys for Moin Moin compatability.
   * Fix handling of discussion links on discussion pages when l10n is used.
+  * Make gitorigin_branch and gitmaster_branch configurable via the setup
+    file. Closes: #408599
 
- -- Joey Hess <joeyh@debian.org>  Thu, 18 Jan 2007 10:03:59 -0500
+ -- Joey Hess <joeyh@debian.org>  Sat, 27 Jan 2007 18:55:45 -0500
 
 ikiwiki (1.40) unstable; urgency=low
 
diff --git a/doc/ikiwiki.setup b/doc/ikiwiki.setup
index af60e076b..910b2b527 100644
--- a/doc/ikiwiki.setup
+++ b/doc/ikiwiki.setup
@@ -29,6 +29,8 @@ use IkiWiki::Setup::Standard {
 	#rcs => "git",
 	#historyurl => "http://git.example.org/gitweb.cgi?p=wiki.git;a=history;f=[[file]]",
 	#diffurl => "http://git.example.org/gitweb.cgi?p=wiki.git;a=blobdiff;h=[[sha1_to]];hp=[[sha1_from]];hb=[[sha1_parent]];f=[[file]]",
+	#gitorigin_branch => "origin",
+	#gitmaster_branch => "master",
 
 	# Tla stuff.
 	#rcs => "tla"
-- 
2.39.5