code: public static InputStream getBranchLogStream(String[] branches, long startRevision, long endRevision, String baseUrl, String user, String pwd) throws IOException {
          CommandLine cmdLine = getCommandLineForXMLLog(user, pwd);
          cmdLine.addArgument(startRevision + ":" + (endRevision != -1 ? endRevision : "HEAD")); // use HEAD if no valid endRevision given (= -1)
          cmdLine.addArgument(baseUrl + branches[0]);
  
          return ExecutionHelper.getCommandResult(cmdLine, new File("."), 0, 120000);
      }
docs: Retrieve the XML-log of changes on the given branch, starting with the given
  revision up to HEAD. This method returns an {@link InputStream} that can be used
  to read and process the XML data without storing the complete result. This is useful
  when you are potentially reading many revisions and thus need to avoid being limited
  in memory or disk.
  
  @param branches The list of branches to fetch logs for, currently only the first entry is used!
  @param startRevision The SVN revision to use as starting point for the log-entries.
  @param endRevision   The SVN revision to use as end point for the log-entries. In case <code>endRevision</code> is <code>-1</code>, HEAD revision is being used
  @param baseUrl       The SVN url to connect to
  @param user          The SVN user or null if the default user from the machine should be used
  @param pwd           The SVN password or null if the default user from the machine should be used   @return A stream that can be used to read the XML data, should be closed by the caller
  
  @return An InputStream which provides the XML-log response
  
  @throws IOException Execution of the SVN sub-process failed or the
  sub-process returned a exit value indicating a failure