diff --git a/gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/client/RefNames.java b/gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/client/RefNames.java index 5d2a1fd026..0940a7fa65 100644 --- a/gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/client/RefNames.java +++ b/gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/client/RefNames.java @@ -17,6 +17,8 @@ package com.google.gerrit.reviewdb.client; /** Constants and utilities for Gerrit-specific ref names. */ public class RefNames { + public static final String HEAD = "HEAD"; + public static final String REFS = "refs/"; public static final String REFS_HEADS = "refs/heads/"; @@ -60,7 +62,8 @@ public class RefNames { public static final String EDIT_PREFIX = "edit-"; public static String fullName(String ref) { - return ref.startsWith(REFS) ? ref : REFS_HEADS + ref; + return (ref.startsWith(REFS) || ref.equals(HEAD)) ? + ref : REFS_HEADS + ref; } public static final String shortName(String ref) { diff --git a/gerrit-reviewdb/src/test/java/com/google/gerrit/reviewdb/client/RefNamesTest.java b/gerrit-reviewdb/src/test/java/com/google/gerrit/reviewdb/client/RefNamesTest.java index b0981a73f6..bd8b8e00b1 100644 --- a/gerrit-reviewdb/src/test/java/com/google/gerrit/reviewdb/client/RefNamesTest.java +++ b/gerrit-reviewdb/src/test/java/com/google/gerrit/reviewdb/client/RefNamesTest.java @@ -29,6 +29,7 @@ public class RefNamesTest { assertThat(RefNames.fullName("refs/heads/master")).isEqualTo("refs/heads/master"); assertThat(RefNames.fullName("master")).isEqualTo("refs/heads/master"); assertThat(RefNames.fullName("refs/tags/v1.0")).isEqualTo("refs/tags/v1.0"); + assertThat(RefNames.fullName("HEAD")).isEqualTo("HEAD"); } @Test