Fix the ls-remote command when there is no local repo

Bug: 436695
Change-Id: I567f9a8e355c7624efa3efc9bac4f3b9015afa97
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
diff --git a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/LsRemote.java b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/LsRemote.java
index 1842b72..93fcd66 100644
--- a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/LsRemote.java
+++ b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/LsRemote.java
@@ -80,6 +80,11 @@ protected void run() throws Exception {
 		}
 	}
 
+	@Override
+	protected boolean requiresRepository() {
+		return false;
+	}
+
 	private void show(final AnyObjectId id, final String name)
 			throws IOException {
 		outw.print(id.name());
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/Transport.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/Transport.java
index 837bd58..3ad1db2 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/Transport.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/Transport.java
@@ -311,10 +311,14 @@ public static Transport open(final Repository local, final String remote)
 	public static Transport open(final Repository local, final String remote,
 			final Operation op) throws NotSupportedException,
 			URISyntaxException, TransportException {
-		final RemoteConfig cfg = new RemoteConfig(local.getConfig(), remote);
-		if (doesNotExist(cfg))
-			return open(local, new URIish(remote), null);
-		return open(local, cfg, op);
+		if (local != null) {
+			final RemoteConfig cfg = new RemoteConfig(local.getConfig(), remote);
+			if (doesNotExist(cfg))
+				return open(local, new URIish(remote), null);
+			return open(local, cfg, op);
+		} else
+			return open(new URIish(remote));
+
 	}
 
 	/**