project: only use --no-auto-gc for git 2.23.0+ The flag for git fetch was introduced in git 2.23.0. Also skip the bloat check after sync if using an older version. Bug: 468589976 Bug: 379111283 Change-Id: Ib53e5494350c71a83906e5219d3a8c2b654e531f Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/536082 Commit-Queue: Gavin Mak <gavinmak@google.com> Reviewed-by: Mike Frysinger <vapier@google.com> Tested-by: Gavin Mak <gavinmak@google.com>
diff --git a/project.py b/project.py index a61c43e..8da2efc 100644 --- a/project.py +++ b/project.py
@@ -2579,7 +2579,7 @@ effective_depth = ( self.clone_depth or self.manifest.manifestProject.depth ) - if effective_depth == 1: + if effective_depth == 1 and git_require((2, 23, 0)): cmd.append("--no-auto-gc") if not verbose:
diff --git a/subcmds/sync.py b/subcmds/sync.py index b7cb173..eb71ae9 100644 --- a/subcmds/sync.py +++ b/subcmds/sync.py
@@ -1437,6 +1437,12 @@ run 'git count-objects -v' and warn if the repository is accumulating excessive pack files or garbage. """ + # We only care about bloated projects if we have a git version that + # supports --no-auto-gc (2.23.0+) since what we use to disable auto-gc + # in Project._RemoteFetch. + if not git_require((2, 23, 0)): + return + projects = [p for p in projects if p.clone_depth] if not projects: return