@@ -0,0 +1,2720 @@
+package org.jenkinsci.plugins.gitclient;%0A%0Aimport com.cloudbees.plugins.credentials.common.StandardCredentials;%0A%0Aimport java.util.Collections;%0Aimport java.util.List;%0A%0A/**%0A * A command to convey unsupported features (Currently, implemented for JGit)%0A *%0A * All of the operations listed below are not implemented in JGit currently.%0A */%0Apublic class UnsupportedCommand %7B%0A%0A    private boolean useJGit = true;%0A%0A    // From CheckoutCommand%0A    public UnsupportedCommand sparseCheckoutPaths(List%3CString%3E sparseCheckoutPaths) %7B%0A        List%3CString%3E sparseList = sparseCheckoutPaths == null ? Collections.%3CString%3EemptyList() : sparseCheckoutPaths;%0A        if (!sparseList.isEmpty()) %7B%0A            useJGit = false;%0A        %7D%0A        return this;%0A    %7D%0A%0A    public UnsupportedCommand timeout(Integer timeout) %7B%0A        if (timeout != null) %7B%0A            useJGit = false;%0A        %7D%0A        return this;%0A    %7D%0A%0A    public UnsupportedCommand lfsRemote(String lfsRemote) %7B%0A        if (lfsRemote != null) %7B%0A            useJGit = false;%0A        %7D%0A        return this;%0A    %7D%0A%0A    public UnsupportedCommand lfsCredentials(StandardCredentials lfsCredentials) %7B%0A        if (lfsCredentials != null) %7B%0A            useJGit = false;%0A        %7D%0A        return this;%0A    %7D%0A%0A    // From CloneCommand%0A    public UnsupportedCommand shallow(boolean shallow) %7B%0A        if (shallow) %7B%0A            useJGit = false;%0A        %7D%0A        return this;%0A    %7D%0A%0A    public UnsupportedCommand depth(Integer depth) %7B%0A        if (depth != null) %7B%0A            useJGit = false;%0A        %7D%0A        return this;%0A    %7D%0A%0A    // From RevListCommand%0A    public UnsupportedCommand firstParent(boolean firstParent) %7B%0A        if (firstParent) %7B%0A            useJGit = false;%0A        %7D%0A        return this;%0A    %7D%0A%0A    // From SubmoduleUpdateCommand%0A    public UnsupportedCommand threads(int threads) %7B%0A        if (threads != 0) %7B%0A            useJGit = false;%0A        %7D%0A        return this;%0A    %7D%0A%0A    public UnsupportedCommand remoteTracking(boolean remoteTracking) %7B%0A        if (remoteTracking) %7B%0A            useJGit = false;%0A        %7D%0A        return this;%0A    %7D%0A%0A    public UnsupportedCommand ref(String ref) %7B%0A        if (ref != null && !ref.isEmpty()) %7B%0A            useJGit = false;%0A        %7D%0A        return this;%0A    %7D%0A%0A    public UnsupportedCommand parentCredentials(boolean parentCredentials) %7B%0A        if (parentCredentials) %7B%0A            useJGit = false;%0A        %7D%0A        return this;%0A    %7D%0A%0A    public UnsupportedCommand useBranch(String submodule, String branchname) %7B%0A        if (submodule != null %7C%7C branchname != null) %7B%0A            useJGit = false;%0A        %7D%0A        return this;%0A    %7D%0A%0A    public boolean determineSupportForJGit() %7B%0A        return useJGit;%0A    %7D%0A%0A%7D%0A

Add UnsupportedCommand class