aboutsummaryrefslogtreecommitdiffstats
path: root/org.eclipse.jgit.test/tst/org
diff options
context:
space:
mode:
authorMatthias Sohn <matthias.sohn@sap.com>2021-01-25 01:54:03 +0100
committerMatthias Sohn <matthias.sohn@sap.com>2021-02-22 23:11:45 +0100
commitcb8924a80d9e07182a056c01acd418a6beddcc0f (patch)
tree2263bc474b1524894d9321c7e667d664c9cb60f0 /org.eclipse.jgit.test/tst/org
parent64cb7148ac64855feb7f7649d1d168d7c6d37860 (diff)
downloadjgit-cb8924a80d9e07182a056c01acd418a6beddcc0f.tar.gz
jgit-cb8924a80d9e07182a056c01acd418a6beddcc0f.zip
init: allow specifying the initial branch name for the new repository
Add option --initial-branch/-b to InitCommand and the CLI init command. This is the first step to implement support for the new option init.defaultBranch. Both were added to git in release 2.28. See https://git-scm.com/docs/git-init#Documentation/git-init.txt--bltbranch-namegt Bug: 564794 Change-Id: Ia383b3f90b5549db80f99b2310450a7faf6bce4c Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Diffstat (limited to 'org.eclipse.jgit.test/tst/org')
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/api/InitCommandTest.java36
1 files changed, 35 insertions, 1 deletions
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/InitCommandTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/InitCommandTest.java
index 1c18b5a8b1..14c52c207a 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/InitCommandTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/InitCommandTest.java
@@ -9,6 +9,7 @@
*/
package org.eclipse.jgit.api;
+import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
@@ -42,7 +43,23 @@ public class InitCommandTest extends RepositoryTestCase {
InitCommand command = new InitCommand();
command.setDirectory(directory);
try (Git git = command.call()) {
- assertNotNull(git.getRepository());
+ Repository r = git.getRepository();
+ assertNotNull(r);
+ assertEquals("refs/heads/master", r.getFullBranch());
+ }
+ }
+
+ @Test
+ public void testInitRepositoryMainInitialBranch()
+ throws IOException, JGitInternalException, GitAPIException {
+ File directory = createTempDirectory("testInitRepository");
+ InitCommand command = new InitCommand();
+ command.setDirectory(directory);
+ command.setInitialBranch("main");
+ try (Git git = command.call()) {
+ Repository r = git.getRepository();
+ assertNotNull(r);
+ assertEquals("refs/heads/main", r.getFullBranch());
}
}
@@ -72,6 +89,23 @@ public class InitCommandTest extends RepositoryTestCase {
Repository repository = git.getRepository();
assertNotNull(repository);
assertTrue(repository.isBare());
+ assertEquals("refs/heads/master", repository.getFullBranch());
+ }
+ }
+
+ @Test
+ public void testInitBareRepositoryMainInitialBranch()
+ throws IOException, JGitInternalException, GitAPIException {
+ File directory = createTempDirectory("testInitBareRepository");
+ InitCommand command = new InitCommand();
+ command.setDirectory(directory);
+ command.setBare(true);
+ command.setInitialBranch("main");
+ try (Git git = command.call()) {
+ Repository repository = git.getRepository();
+ assertNotNull(repository);
+ assertTrue(repository.isBare());
+ assertEquals("refs/heads/main", repository.getFullBranch());
}
}