diff --git a/src/main/java/com/amd/gerrit/plugins/manifestsubscription/VersionedManifests.java b/src/main/java/com/amd/gerrit/plugins/manifestsubscription/VersionedManifests.java
index 0e87269..bdffd8c 100644
--- a/src/main/java/com/amd/gerrit/plugins/manifestsubscription/VersionedManifests.java
+++ b/src/main/java/com/amd/gerrit/plugins/manifestsubscription/VersionedManifests.java
@@ -14,17 +14,20 @@
 
 package com.amd.gerrit.plugins.manifestsubscription;
 
-import com.amd.gerrit.plugins.manifestsubscription.manifest.Manifest;
 import com.google.common.collect.HashBasedTable;
 import com.google.common.collect.Maps;
 import com.google.common.collect.Table;
 import com.google.gerrit.reviewdb.client.Project;
 import com.google.gerrit.server.git.GitRepositoryManager;
 import com.google.gerrit.server.git.VersionedMetaData;
+
+import com.amd.gerrit.plugins.manifestsubscription.manifest.Manifest;
+
 import org.eclipse.jgit.api.Git;
 import org.eclipse.jgit.api.errors.GitAPIException;
 import org.eclipse.jgit.errors.ConfigInvalidException;
 import org.eclipse.jgit.lib.CommitBuilder;
+import org.eclipse.jgit.lib.ObjectId;
 import org.eclipse.jgit.lib.PersonIdent;
 import org.eclipse.jgit.lib.Repository;
 import org.eclipse.jgit.revwalk.RevCommit;
@@ -34,18 +37,25 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
 import javax.xml.bind.JAXBContext;
 import javax.xml.bind.JAXBException;
 import javax.xml.bind.Marshaller;
 import javax.xml.bind.Unmarshaller;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.util.*;
 
 public class VersionedManifests extends VersionedMetaData implements ManifestProvider {
   private static final Logger log =
       LoggerFactory.getLogger(VersionedManifests.class);
+
   private String refName;
   private Unmarshaller manifestUnmarshaller;
   private Marshaller manifestMarshaller;
@@ -295,7 +305,9 @@
                            String hash, String name,
                            GitRepositoryManager gitRepoManager) {
         project.setRevision(hash);
-        project.setUpstream(name);
+        if (!ObjectId.isId(name)) {
+          project.setUpstream(name);
+        }
         return true;
       }
     };
