From de49edbffb15bbc4daa39b3387dce47d71bc8fef Mon Sep 17 00:00:00 2001 From: Marc Strapetz Date: Wed, 13 Dec 2017 23:01:37 +0100 Subject: CloneCommand: option to set FS to be used Change-Id: If8342974d07b7d89a6c5721a6dd03826886aa89e Signed-off-by: Marc Strapetz --- .../src/org/eclipse/jgit/api/CloneCommand.java | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'org.eclipse.jgit') diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/api/CloneCommand.java b/org.eclipse.jgit/src/org/eclipse/jgit/api/CloneCommand.java index 1601a5dfca..6d3afc619a 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/api/CloneCommand.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/api/CloneCommand.java @@ -78,6 +78,7 @@ import org.eclipse.jgit.transport.RemoteConfig; import org.eclipse.jgit.transport.TagOpt; import org.eclipse.jgit.transport.URIish; import org.eclipse.jgit.util.FileUtils; +import org.eclipse.jgit.util.FS; /** * Clone a repository into a new working directory @@ -95,6 +96,8 @@ public class CloneCommand extends TransportCommand { private boolean bare; + private FS fs; + private String remote = Constants.DEFAULT_REMOTE_NAME; private String branch = Constants.HEAD; @@ -259,6 +262,9 @@ public class CloneCommand extends TransportCommand { private Repository init() throws GitAPIException { InitCommand command = Git.init(); command.setBare(bare); + if (fs != null) { + command.setFs(fs); + } if (directory != null) { command.setDirectory(directory); } @@ -518,6 +524,20 @@ public class CloneCommand extends TransportCommand { return this; } + /** + * Set the file system abstraction to be used for repositories created by + * this command. + * + * @param fs + * the abstraction. + * @return {@code this} (for chaining calls). + * @since 4.10 + */ + public CloneCommand setFs(FS fs) { + this.fs = fs; + return this; + } + /** * The remote name used to keep track of the upstream repository for the * clone operation. If no remote name is set, the default value of -- cgit v1.2.3