* [EGIT] [PATCH v2 1/1] Make sure to set up the default remote branch correctly
2009-02-23 17:45 [EGIT] [PATCH v2 0/1] Make sure to setup a clone the same as git-clone does Ferry Huberts
@ 2009-02-23 17:45 ` Ferry Huberts
0 siblings, 0 replies; 2+ messages in thread
From: Ferry Huberts @ 2009-02-23 17:45 UTC (permalink / raw)
To: git; +Cc: Ferry Huberts
This is to make sure that the plugin sets up a clone
in the same fashion as git-clone.
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
---
.../org/spearce/egit/core/op/CloneOperation.java | 18 ++++++++++++++++++
1 files changed, 18 insertions(+), 0 deletions(-)
diff --git a/org.spearce.egit.core/src/org/spearce/egit/core/op/CloneOperation.java b/org.spearce.egit.core/src/org/spearce/egit/core/op/CloneOperation.java
index 777894c..b66c870 100644
--- a/org.spearce.egit.core/src/org/spearce/egit/core/op/CloneOperation.java
+++ b/org.spearce.egit.core/src/org/spearce/egit/core/op/CloneOperation.java
@@ -32,6 +32,7 @@
import org.spearce.jgit.lib.Ref;
import org.spearce.jgit.lib.RefUpdate;
import org.spearce.jgit.lib.Repository;
+import org.spearce.jgit.lib.RepositoryConfig;
import org.spearce.jgit.lib.Tree;
import org.spearce.jgit.lib.WorkDirCheckout;
import org.spearce.jgit.transport.FetchResult;
@@ -158,6 +159,23 @@ private void doInit(final IProgressMonitor monitor)
local.getConfig().setBoolean("core", null, "bare", false);
remoteConfig.update(local.getConfig());
+
+ // branch is like 'Constants.R_HEADS + branchName',
+ // we need the 'branchName' part only
+ String[] branchSplit = branch.split(Constants.R_HEADS);
+
+ // setup the default remote branch for branchName
+ local.getConfig().setString(
+ RepositoryConfig.BRANCH_SECTION,
+ branchSplit[branchSplit.length - 1],
+ "remote",
+ remoteName);
+ local.getConfig().setString(
+ RepositoryConfig.BRANCH_SECTION,
+ branchSplit[branchSplit.length - 1],
+ "merge",
+ branch);
+
local.getConfig().save();
}
--
1.6.0.6
^ permalink raw reply related [flat|nested] 2+ messages in thread