diff --git a/scm-plugins/scm-git-plugin/pom.xml b/scm-plugins/scm-git-plugin/pom.xml
index b57e395d26..1ab92e7708 100644
--- a/scm-plugins/scm-git-plugin/pom.xml
+++ b/scm-plugins/scm-git-plugin/pom.xml
@@ -37,6 +37,12 @@
org.eclipse.jgit.http.server
${jgit.version}
+
+
+ sonia.jgit
+ org.eclipse.jgit.java7
+ ${jgit.version}
+
commons-lang
diff --git a/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/GitUtil.java b/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/GitUtil.java
index 6fe3211ca8..114326834e 100644
--- a/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/GitUtil.java
+++ b/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/GitUtil.java
@@ -198,8 +198,6 @@ public final class GitUtil
*
* @return
*
- * @throws GitAPIException
- *
* @throws RepositoryException
*/
public static FetchResult fetch(Git git, File directory,
@@ -376,7 +374,7 @@ public final class GitUtil
}
}
- catch (Exception ex)
+ catch (IOException ex)
{
logger.warn("error occured during resolve of branch id", ex);
}
@@ -582,7 +580,7 @@ public final class GitUtil
String revision)
throws IOException
{
- ObjectId revId = null;
+ ObjectId revId;
if (Util.isNotEmpty(revision))
{
diff --git a/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/spi/AbstractGitCommand.java b/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/spi/AbstractGitCommand.java
index dc26777f65..9bf825c0e2 100644
--- a/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/spi/AbstractGitCommand.java
+++ b/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/spi/AbstractGitCommand.java
@@ -51,10 +51,8 @@ public class AbstractGitCommand
* Constructs ...
*
*
- *
* @param context
* @param repository
- * @param repositoryDirectory
*/
protected AbstractGitCommand(GitContext context,
sonia.scm.repository.Repository repository)
diff --git a/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/spi/GitContext.java b/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/spi/GitContext.java
index b003395e5a..2175846d5a 100644
--- a/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/spi/GitContext.java
+++ b/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/spi/GitContext.java
@@ -80,10 +80,7 @@ public class GitContext implements Closeable
@Override
public void close()
{
- if (logger.isTraceEnabled())
- {
- logger.trace("close git repository {}", directory);
- }
+ logger.trace("close git repository {}", directory);
GitUtil.close(repository);
repository = null;
@@ -101,10 +98,7 @@ public class GitContext implements Closeable
{
if (repository == null)
{
- if (logger.isTraceEnabled())
- {
- logger.trace("open git repository {}", directory);
- }
+ logger.trace("open git repository {}", directory);
repository = GitUtil.open(directory);
}
@@ -115,7 +109,7 @@ public class GitContext implements Closeable
//~--- fields ---------------------------------------------------------------
/** Field description */
- private File directory;
+ private final File directory;
/** Field description */
private org.eclipse.jgit.lib.Repository repository;
diff --git a/scm-plugins/scm-git-plugin/src/test/java/sonia/scm/repository/GitUtilTest.java b/scm-plugins/scm-git-plugin/src/test/java/sonia/scm/repository/GitUtilTest.java
index 9eed5602f0..c34da3f738 100644
--- a/scm-plugins/scm-git-plugin/src/test/java/sonia/scm/repository/GitUtilTest.java
+++ b/scm-plugins/scm-git-plugin/src/test/java/sonia/scm/repository/GitUtilTest.java
@@ -30,11 +30,21 @@
*/
+
package sonia.scm.repository;
//~--- non-JDK imports --------------------------------------------------------
+import org.eclipse.jgit.api.Git;
+import org.eclipse.jgit.api.errors.GitAPIException;
+
+import org.junit.Rule;
import org.junit.Test;
+import org.junit.rules.TemporaryFolder;
+
+import static org.hamcrest.Matchers.*;
+
+import static org.junit.Assert.*;
import static org.mockito.Mockito.*;
@@ -81,6 +91,25 @@ public class GitUtilTest
GitUtil.checkBranchName(repo, GitUtil.REF_HEAD_PREFIX.concat("develop"));
}
+ /**
+ * Method description
+ *
+ *
+ * @throws GitAPIException
+ * @throws IOException
+ */
+ @Test
+ public void testOpenJava7() throws GitAPIException, IOException
+ {
+ File dir = temp.newFolder();
+
+ Git.init().setDirectory(dir).setBare(true).call();
+
+ org.eclipse.jgit.lib.Repository repo = GitUtil.open(dir);
+
+ assertThat(repo.getFS().getClass().getName(), containsString("Java7"));
+ }
+
/**
* Method description
*
@@ -98,4 +127,10 @@ public class GitUtilTest
return repo;
}
+
+ //~--- fields ---------------------------------------------------------------
+
+ /** Field description */
+ @Rule
+ public TemporaryFolder temp = new TemporaryFolder();
}