This is an automated email from the ASF dual-hosted git repository.

michaelo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-scm.git


The following commit(s) were added to refs/heads/master by this push:
     new 9be3bf0  [SCM-869] gitexe list() implemented incorrectly
9be3bf0 is described below

commit 9be3bf0d54f8fde5f2f6f668f5047c1174e7c9d7
Author: Ilya Basin <basini...@gmail.com>
AuthorDate: Thu Feb 22 10:10:20 2018 +0300

    [SCM-869] gitexe list() implemented incorrectly
    
    This closes #67
---
 .../scm/provider/git/AbstractGitScmProvider.java   | 18 ++------
 .../maven/scm/provider/git/TestGitScmProvider.java |  5 ---
 .../scm/provider/git/gitexe/GitExeScmProvider.java |  7 ---
 .../git/gitexe/command/list/GitListCommand.java    | 51 ++--------------------
 4 files changed, 6 insertions(+), 75 deletions(-)

diff --git 
a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/java/org/apache/maven/scm/provider/git/AbstractGitScmProvider.java
 
b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/java/org/apache/maven/scm/provider/git/AbstractGitScmProvider.java
index 3609335..dbeadac 100644
--- 
a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/java/org/apache/maven/scm/provider/git/AbstractGitScmProvider.java
+++ 
b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/java/org/apache/maven/scm/provider/git/AbstractGitScmProvider.java
@@ -36,7 +36,6 @@ import 
org.apache.maven.scm.command.checkout.CheckOutScmResult;
 import org.apache.maven.scm.command.diff.DiffScmResult;
 import org.apache.maven.scm.command.export.ExportScmResult;
 import org.apache.maven.scm.command.info.InfoScmResult;
-import org.apache.maven.scm.command.list.ListScmResult;
 import org.apache.maven.scm.command.remoteinfo.RemoteInfoScmResult;
 import org.apache.maven.scm.command.remove.RemoveScmResult;
 import org.apache.maven.scm.command.status.StatusScmResult;
@@ -91,12 +90,12 @@ public abstract class AbstractGitScmProvider
         try
         {
             ScmUrlParserResult result = parseScmUrl( scmSpecificUrl, delimiter 
);
-    
+
             if ( result.messages.size() > 0 )
             {
                 throw new ScmRepositoryException( "The scm url " + 
scmSpecificUrl + " is invalid.", result.messages );
             }
-    
+
             return result.repository;
         }
         catch ( ScmException e )
@@ -291,17 +290,6 @@ public abstract class AbstractGitScmProvider
         return command.execute( repository, fileSet, parameters );
     }
 
-    protected abstract GitCommand getListCommand();
-
-    /** {@inheritDoc} */
-    public ListScmResult list( ScmProviderRepository repository, ScmFileSet 
fileSet, CommandParameters parameters )
-        throws ScmException
-    {
-        GitCommand cmd = getListCommand();
-
-        return (ListScmResult) executeCommand( cmd, repository, fileSet, 
parameters );
-    }
-
     protected abstract GitCommand getInfoCommand();
 
     public InfoScmResult info( ScmProviderRepository repository, ScmFileSet 
fileSet, CommandParameters parameters )
@@ -322,7 +310,7 @@ public abstract class AbstractGitScmProvider
     }
 
     protected abstract GitCommand getBlameCommand();
-    
+
     /** {@inheritDoc} */
     public RemoteInfoScmResult remoteInfo( ScmProviderRepository repository, 
ScmFileSet fileSet,
                                            CommandParameters parameters )
diff --git 
a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/test/java/org/apache/maven/scm/provider/git/TestGitScmProvider.java
 
b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/test/java/org/apache/maven/scm/provider/git/TestGitScmProvider.java
index 2f596b8..3f07e9a 100644
--- 
a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/test/java/org/apache/maven/scm/provider/git/TestGitScmProvider.java
+++ 
b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/test/java/org/apache/maven/scm/provider/git/TestGitScmProvider.java
@@ -81,11 +81,6 @@ public class TestGitScmProvider
         return null;
     }
 
-    protected GitCommand getListCommand()
-    {
-        return null;
-    }
-
     protected GitCommand getInfoCommand()
     {
         return null;
diff --git 
a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/GitExeScmProvider.java
 
b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/GitExeScmProvider.java
index 2428377..596177a 100644
--- 
a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/GitExeScmProvider.java
+++ 
b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/GitExeScmProvider.java
@@ -34,7 +34,6 @@ import 
org.apache.maven.scm.provider.git.gitexe.command.checkin.GitCheckInComman
 import 
org.apache.maven.scm.provider.git.gitexe.command.checkout.GitCheckOutCommand;
 import org.apache.maven.scm.provider.git.gitexe.command.diff.GitDiffCommand;
 import org.apache.maven.scm.provider.git.gitexe.command.info.GitInfoCommand;
-import org.apache.maven.scm.provider.git.gitexe.command.list.GitListCommand;
 import 
org.apache.maven.scm.provider.git.gitexe.command.remoteinfo.GitRemoteInfoCommand;
 import 
org.apache.maven.scm.provider.git.gitexe.command.remove.GitRemoveCommand;
 import 
org.apache.maven.scm.provider.git.gitexe.command.status.GitStatusCommand;
@@ -118,12 +117,6 @@ public class GitExeScmProvider
     }
 
     /** {@inheritDoc} */
-    protected GitCommand getListCommand()
-    {
-        return new GitListCommand();
-    }
-
-    /** {@inheritDoc} */
     public GitCommand getInfoCommand()
     {
         return new GitInfoCommand();
diff --git 
a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/list/GitListCommand.java
 
b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/list/GitListCommand.java
index 27a90f8..ffe5733 100644
--- 
a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/list/GitListCommand.java
+++ 
b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/list/GitListCommand.java
@@ -19,63 +19,18 @@ package 
org.apache.maven.scm.provider.git.gitexe.command.list;
  * under the License.
  */
 
-import org.apache.maven.scm.ScmException;
-import org.apache.maven.scm.ScmFileSet;
-import org.apache.maven.scm.ScmFileStatus;
-import org.apache.maven.scm.ScmVersion;
-import org.apache.maven.scm.command.list.AbstractListCommand;
-import org.apache.maven.scm.command.list.ListScmResult;
-import org.apache.maven.scm.provider.ScmProviderRepository;
-import org.apache.maven.scm.provider.git.command.GitCommand;
-import org.apache.maven.scm.provider.git.repository.GitScmProviderRepository;
+import java.io.File;
+
 import org.apache.maven.scm.provider.git.gitexe.command.GitCommandLineUtils;
-import org.codehaus.plexus.util.cli.CommandLineUtils;
+import org.apache.maven.scm.provider.git.repository.GitScmProviderRepository;
 import org.codehaus.plexus.util.cli.Commandline;
 
-import java.io.File;
-
 /**
  * @author <a href="mailto:strub...@yahoo.de";>Mark Struberg</a>
  *
  */
 public class GitListCommand
-    extends AbstractListCommand
-    implements GitCommand
 {
-    /** {@inheritDoc} */
-    protected ListScmResult executeListCommand( ScmProviderRepository repo, 
ScmFileSet fileSet, boolean recursive,
-                                                ScmVersion scmVersion )
-        throws ScmException
-    {
-        GitScmProviderRepository repository = (GitScmProviderRepository) repo;
-
-        if ( GitScmProviderRepository.PROTOCOL_FILE.equals( 
repository.getFetchInfo().getProtocol() )
-            && repository.getFetchInfo().getPath().indexOf( 
fileSet.getBasedir().getPath() ) >= 0 )
-        {
-            throw new ScmException( "remote repository must not be the working 
directory" );
-        }
-
-        int exitCode;
-
-        CommandLineUtils.StringStreamConsumer stderr = new 
CommandLineUtils.StringStreamConsumer();
-        GitListConsumer consumer = new GitListConsumer( getLogger(), 
fileSet.getBasedir().getParentFile(),
-                                                        
ScmFileStatus.CHECKED_IN );
-
-        Commandline cl = createCommandLine( repository, fileSet.getBasedir() );
-
-        exitCode = GitCommandLineUtils.execute( cl, consumer, stderr, 
getLogger() );
-        if ( exitCode != 0 )
-        {
-            return new ListScmResult( cl.toString(), "The git-ls-files command 
failed.", stderr.getOutput(), false );
-        }
-
-        return new ListScmResult( cl.toString(), consumer.getListedFiles() );
-    }
-
-    // ----------------------------------------------------------------------
-    //
-    // ----------------------------------------------------------------------
-
     public static Commandline createCommandLine( GitScmProviderRepository 
repository, File workingDirectory )
     {
         Commandline cl = GitCommandLineUtils.getBaseGitCommandLine( 
workingDirectory, "ls-files" );

-- 
To stop receiving notification emails like this one, please contact
micha...@apache.org.

Reply via email to