assertTrue(e.getMessage().contains(dirName));
}
}
+
+ @Test
+ public void testCloneRepositoryWithMultipleHeadBranches() throws Exception {
+ git.checkout().setName(Constants.MASTER).call();
+ git.branchCreate().setName("a").call();
+
+ File directory = createTempDirectory("testCloneRepositoryWithMultipleHeadBranches");
+ CloneCommand clone = Git.cloneRepository();
+ clone.setDirectory(directory);
+ clone.setURI("file://" + git.getRepository().getWorkTree().getPath());
+ Git git2 = clone.call();
+ addRepoToClose(git2.getRepository());
+ assertNotNull(git2);
+
+ assertEquals(Constants.MASTER, git2.getRepository().getBranch());
+ }
}
final Ref idHEAD = result.getAdvertisedRef(Constants.HEAD);
if (idHEAD == null)
return null;
+
+ Ref master = result.getAdvertisedRef(Constants.R_HEADS
+ + Constants.MASTER);
+ if (master != null && master.getObjectId().equals(idHEAD.getObjectId()))
+ return master;
+
Ref foundBranch = null;
for (final Ref r : result.getAdvertisedRefs()) {
final String n = r.getName();