aboutsummaryrefslogtreecommitdiffstats
path: root/org.eclipse.jgit.pgm
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.jgit.pgm')
-rw-r--r--org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Checkout.java12
1 files changed, 11 insertions, 1 deletions
diff --git a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Checkout.java b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Checkout.java
index 229d54d44f..7a218ec926 100644
--- a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Checkout.java
+++ b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Checkout.java
@@ -18,6 +18,7 @@ import java.util.List;
import org.eclipse.jgit.api.CheckoutCommand;
import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.errors.CheckoutConflictException;
+import org.eclipse.jgit.api.errors.InvalidRefNameException;
import org.eclipse.jgit.api.errors.RefAlreadyExistsException;
import org.eclipse.jgit.api.errors.RefNotFoundException;
import org.eclipse.jgit.lib.Constants;
@@ -94,7 +95,16 @@ class Checkout extends TextBuiltin {
outw.println(MessageFormat.format(
CLIText.get().switchedToBranch,
Repository.shortenRefName(ref.getName())));
- } catch (RefNotFoundException e) {
+ } catch (InvalidRefNameException e){
+ if (name == null){
+ throw die(MessageFormat
+ .format("a valid ref is expected",e));
+ } else {
+ throw die(MessageFormat
+ .format(CLIText.get().notAValidRefName, name, e));
+ }
+ }
+ catch (RefNotFoundException e) {
throw die(MessageFormat
.format(CLIText.get().pathspecDidNotMatch, name), e);
} catch (RefAlreadyExistsException e) {