Fix for failures with repo upload for projects that have a SHA1 for a revision; instead use the default manifest revision

Change-Id: Ie5ef5a45ed6b0ca1a52a550df3cd7bd72e745f5f
diff --git a/subcmds/start.py b/subcmds/start.py
index ae2985d..0088507 100644
--- a/subcmds/start.py
+++ b/subcmds/start.py
@@ -15,6 +15,7 @@
 
 import sys
 from command import Command
+from git_config import IsId
 from git_command import git
 from progress import Progress
 
@@ -56,6 +57,10 @@
     pm = Progress('Starting %s' % nb, len(all))
     for project in all:
       pm.update()
+      # If the current revision is a specific SHA1 then we can't push back
+      # to it so substitute the manifest default revision instead.
+      if IsId(project.revisionExpr):
+        project.revisionExpr = self.manifest.default.revisionExpr
       if not project.StartBranch(nb):
         err.append(project)
     pm.end()