org.eclipse.jgit.api
Class CloneCommand

java.lang.Object
  extended by org.eclipse.jgit.api.GitCommand<T>
      extended by org.eclipse.jgit.api.TransportCommand<CloneCommand,Git>
          extended by org.eclipse.jgit.api.CloneCommand
All Implemented Interfaces:
Callable<Git>

public class CloneCommand
extends TransportCommand<CloneCommand,Git>

Clone a repository into a new working directory

See Also:
Git documentation about Clone

Field Summary
 
Fields inherited from class org.eclipse.jgit.api.TransportCommand
credentialsProvider, timeout, transportConfigCallback
 
Fields inherited from class org.eclipse.jgit.api.GitCommand
repo
 
Constructor Summary
CloneCommand()
          Create clone command with no repository set
 
Method Summary
 Git call()
          Executes the Clone command.
 CloneCommand setBare(boolean bare)
           
 CloneCommand setBranch(String branch)
           
 CloneCommand setBranchesToClone(Collection<String> branchesToClone)
           
 CloneCommand setCloneAllBranches(boolean cloneAllBranches)
           
 CloneCommand setCloneSubmodules(boolean cloneSubmodules)
           
 CloneCommand setDirectory(File directory)
          The optional directory associated with the clone operation.
 CloneCommand setNoCheckout(boolean noCheckout)
           
 CloneCommand setProgressMonitor(ProgressMonitor monitor)
          The progress monitor associated with the clone operation.
 CloneCommand setRemote(String remote)
          The remote name used to keep track of the upstream repository for the clone operation.
 CloneCommand setURI(String uri)
           
 
Methods inherited from class org.eclipse.jgit.api.TransportCommand
configure, configure, self, setCredentialsProvider, setTimeout, setTransportConfigCallback
 
Methods inherited from class org.eclipse.jgit.api.GitCommand
checkCallable, getRepository, setCallable
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CloneCommand

public CloneCommand()
Create clone command with no repository set

Method Detail

call

public Git call()
         throws GitAPIException,
                InvalidRemoteException,
                TransportException
Executes the Clone command.

Specified by:
call in interface Callable<Git>
Specified by:
call in class GitCommand<Git>
Returns:
the newly created Git object with associated repository
Throws:
InvalidRemoteException
TransportException
GitAPIException

setURI

public CloneCommand setURI(String uri)
Parameters:
uri - the uri to clone from
Returns:
this instance

setDirectory

public CloneCommand setDirectory(File directory)
The optional directory associated with the clone operation. If the directory isn't set, a name associated with the source uri will be used.

Parameters:
directory - the directory to clone to
Returns:
this instance
See Also:
URIish.getHumanishName()

setBare

public CloneCommand setBare(boolean bare)
Parameters:
bare - whether the cloned repository is bare or not
Returns:
this instance

setRemote

public CloneCommand setRemote(String remote)
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 Constants.DEFAULT_REMOTE_NAME will be used.

Parameters:
remote - name that keeps track of the upstream repository
Returns:
this instance
See Also:
Constants.DEFAULT_REMOTE_NAME

setBranch

public CloneCommand setBranch(String branch)
Parameters:
branch - the initial branch to check out when cloning the repository
Returns:
this instance

setProgressMonitor

public CloneCommand setProgressMonitor(ProgressMonitor monitor)
The progress monitor associated with the clone operation. By default, this is set to NullProgressMonitor

Parameters:
monitor -
Returns:
this
See Also:
NullProgressMonitor

setCloneAllBranches

public CloneCommand setCloneAllBranches(boolean cloneAllBranches)
Parameters:
cloneAllBranches - true when all branches have to be fetched (indicates wildcard in created fetch refspec), false otherwise.
Returns:
this

setCloneSubmodules

public CloneCommand setCloneSubmodules(boolean cloneSubmodules)
Parameters:
cloneSubmodules - true to initialize and update submodules. Ignored when setBare(boolean) is set to true.
Returns:
this

setBranchesToClone

public CloneCommand setBranchesToClone(Collection<String> branchesToClone)
Parameters:
branchesToClone - collection of branches to clone. Ignored when allSelected is true.
Returns:
this

setNoCheckout

public CloneCommand setNoCheckout(boolean noCheckout)
Parameters:
noCheckout - if set to true no branch will be checked out after the clone. This enhances performance of the clone command when there is no need for a checked out branch.
Returns:
this


Copyright © 2012. All Rights Reserved.