aboutsummaryrefslogtreecommitdiffstats
path: root/org.eclipse.jgit.lfs/src
diff options
context:
space:
mode:
authorMatthias Sohn <matthias.sohn@sap.com>2019-08-19 17:52:02 +0200
committerMatthias Sohn <matthias.sohn@sap.com>2019-08-19 18:30:35 +0200
commit0eea7368e26c6a6daeb1bb6eb536977421b1ccc5 (patch)
tree80e250c03719eebe96facdf09f4b66107a56ed41 /org.eclipse.jgit.lfs/src
parent0046b2a8fefcbfecc10a7b198a075eb2775d3e7a (diff)
parent86a567f6152315f5d55309c7119885d0fa3476ce (diff)
downloadjgit-0eea7368e26c6a6daeb1bb6eb536977421b1ccc5.tar.gz
jgit-0eea7368e26c6a6daeb1bb6eb536977421b1ccc5.zip
Merge branch 'stable-5.1' into stable-5.2
* stable-5.1: Fix NPE in RebaseTodoFile#parseComments Fix NPE in ObjectIdOwnerMap#get Fix NPE in CommitOnlyTest#getHead FileUtils#lastModifiedInstant should not log error if path doesn't exist Cache user global and system-wide git configurations Avoid setup and saving FileStoreAttributes compete for ~/.gitconfig lock Add missing dependencies for running FS_POSIXTest in Eclipse Fix javadoc for SystemReader#getInstance Improve retry handling when saving FileStoreAttributes fails Ensure FSTest uses MockSystemReader Make supportsAtomicCreateNewFile return true as default Update orbit to R20190602212107-2019-06 to enable backports from master Handle InvalidPathException in FS_POSIX#createNewFileAtomic Ensure root cause of lock creation failures is logged Implement toString in MockSystemReader and MockConfig LocalDiskRefTreeDatabaseTest shall use MockSystemReader Ensure LocalDiskRepositoryTestCase#setup fully uses MockSystemReader Ensure we use MockSystemReader in tests Override FileBasedConfig's save method in MockConfig Remove FileBasedConfig.load(boolean) introduced in d45219ba Disable debug log for FS in org.eclipse.jgit.test Bazel: enable logging for tests in org.eclipse.jgit.test LockFile: log exception if creation of lock file failed Stop using deprecated Constants.CHARACTER_ENCODING Change-Id: I48c585f3c9287be7d6ddb6b01a1955444e13fa31 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Diffstat (limited to 'org.eclipse.jgit.lfs/src')
-rw-r--r--org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/InstallBuiltinLfsCommand.java41
1 files changed, 20 insertions, 21 deletions
diff --git a/org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/InstallBuiltinLfsCommand.java b/org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/InstallBuiltinLfsCommand.java
index 028b19b2ab..b7b0535ea5 100644
--- a/org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/InstallBuiltinLfsCommand.java
+++ b/org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/InstallBuiltinLfsCommand.java
@@ -43,14 +43,12 @@
package org.eclipse.jgit.lfs;
import java.io.IOException;
-import java.text.MessageFormat;
+import org.eclipse.jgit.api.errors.InvalidConfigurationException;
import org.eclipse.jgit.errors.ConfigInvalidException;
-import org.eclipse.jgit.lfs.internal.LfsText;
import org.eclipse.jgit.lib.ConfigConstants;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.lib.StoredConfig;
-import org.eclipse.jgit.storage.file.FileBasedConfig;
import org.eclipse.jgit.util.FS;
import org.eclipse.jgit.util.LfsFactory.LfsInstallCommand;
import org.eclipse.jgit.util.SystemReader;
@@ -70,12 +68,28 @@ public class InstallBuiltinLfsCommand implements LfsInstallCommand {
private Repository repository;
- /** {@inheritDoc} */
+ /**
+ * {@inheritDoc}
+ *
+ * @throws IOException
+ * if an I/O error occurs while accessing a git config or
+ * executing {@code git lfs install} in an external process
+ * @throws InvalidConfigurationException
+ * if a git configuration is invalid
+ * @throws InterruptedException
+ * if the current thread is interrupted while waiting for the
+ * {@code git lfs install} executed in an external process
+ */
@Override
- public Void call() throws Exception {
+ public Void call() throws IOException, InvalidConfigurationException,
+ InterruptedException {
StoredConfig cfg = null;
if (repository == null) {
- cfg = loadUserConfig();
+ try {
+ cfg = SystemReader.getInstance().getUserConfig();
+ } catch (ConfigInvalidException e) {
+ throw new InvalidConfigurationException(e.getMessage(), e);
+ }
} else {
cfg = repository.getConfig();
}
@@ -116,19 +130,4 @@ public class InstallBuiltinLfsCommand implements LfsInstallCommand {
return this;
}
- private StoredConfig loadUserConfig() throws IOException {
- FileBasedConfig c = SystemReader.getInstance().openUserConfig(null,
- FS.DETECTED);
- try {
- c.load();
- } catch (ConfigInvalidException e1) {
- throw new IOException(MessageFormat
- .format(LfsText.get().userConfigInvalid, c.getFile()
- .getAbsolutePath(), e1),
- e1);
- }
-
- return c;
- }
-
}