diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/CommitTemplateConfigTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/CommitTemplateConfigTest.java
index 6dbe30a..eaebd57 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/CommitTemplateConfigTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/CommitTemplateConfigTest.java
@@ -17,7 +17,6 @@
 
 import org.eclipse.jgit.errors.ConfigInvalidException;
 import org.eclipse.jgit.junit.JGitTestUtil;
-import org.eclipse.jgit.storage.file.FileRepositoryBuilder;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.TemporaryFolder;
@@ -37,8 +36,6 @@ public void testCommitTemplatePathInHomeDirecory()
 			throws ConfigInvalidException, IOException {
 		Config config = new Config(null);
 		File tempFile = tmp.newFile("testCommitTemplate-");
-		File workTree = tmp.newFolder("dummy-worktree");
-		Repository repo = FileRepositoryBuilder.create(workTree);
 		String templateContent = "content of the template";
 		JGitTestUtil.write(tempFile, templateContent);
 		// proper evaluation of the ~/ directory
@@ -55,6 +52,6 @@ public void testCommitTemplatePathInHomeDirecory()
 				.getCommitTemplatePath();
 		assertEquals(expectedTemplatePath, templatePath);
 		assertEquals(templateContent,
-				config.get(CommitConfig.KEY).getCommitTemplateContent(repo));
+				config.get(CommitConfig.KEY).getCommitTemplateContent());
 	}
 }
