From f7b64e3350a622ee87e1927cdbc8d854a5696d85 Mon Sep 17 00:00:00 2001
From: Chirayu Desai <chirayudesai1@gmail.com>
Date: Tue, 4 Feb 2020 17:50:57 +0530
Subject: [PATCH] Do not try to fetch default revision for mirrors always

* Mirrors may contain multiple projects, some of which may not
  always contain the default revision.
* Only fetch the default revision explicitly if
  '--current-branch' is set.
* Fixes breakage casued by
  commit 6856f98467aa5c98085cdee02587dbab984cebb1
  "Fix repo mirror with --current-branch"

Bug: https://crbug.com/gerrit/12274
Change-Id: Iaafabe2992f76f3644b841f24245d3e19c9515a9
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/253093
Reviewed-by: Kuang-che Wu <kcwu@chromium.org>
Reviewed-by: Mike Frysinger <vapier@google.com>
Tested-by: Chirayu Desai <chirayudesai1@gmail.com>
---
 project.py | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/project.py b/project.py
index 24fbf4f..a0cb5e9 100755
--- a/project.py
+++ b/project.py
@@ -2322,7 +2322,10 @@ class Project(object):
       spec.append('tag')
       spec.append(tag_name)
 
-    branch = self.revisionExpr
+    if self.manifest.IsMirror and not current_branch_only:
+      branch = None
+    else:
+      branch = self.revisionExpr
     if (not self.manifest.IsMirror and is_sha1 and depth
         and git_require((1, 8, 3))):
       # Shallow checkout of a specific commit, fetch from that commit and not
-- 
GitLab