repo v2.60

106 views
Skip to first unread message

Gavin Mak

unread,
Dec 10, 2025, 3:07:48 PM (6 days ago) Dec 10
to Repo and Gerrit Discussion
Hi all,

repo v2.59 has been released: https://gerrit.googlesource.com/git-repo/+/refs/tags/v2.60. I plan to promote it to stable tomorrow 12/11.

v2.60 introduces the `repo wipe` command, expands `extend-project` capabilities, and enhances sync reliability for shallow repositories.

Changelog (link):
b5991d7 (Gavin Mak) sync: Add heuristic warning for bloated shallow repositories  (tag: v2.60)
7f87c54 (Gavin Mak) project: disable auto-gc on fetch for projects with clone-depth=1
50c6226 (Kaushik Lingarkar) Prevent leftover bare gitdirs after failed sync attempts
1e4b288 (Peter Kjellerstedt) project: Make the error message more logical when a linkfile fail
31b4b19 (Peter Kjellerstedt) info: Print a newline after printing the superproject's revision
2b6de52 (Peter Kjellerstedt) Rename XmlManifest.GetGroupsStr() to XmlManifest.GetManifestGroupsStr()
91ec998 (Peter Kjellerstedt) manifest_xml, git_superproject: Rename an argument for XmlManifest.ToXml()
08964a1 (Mike Frysinger) docs: manifest-format: reformat spec to align the CDATA parts
3073a90 (Peter Kjellerstedt) manifest: Propagate revision attribute through multiple levels of include
75773b8 (Peter Kjellerstedt) manifest, project: Store project groups as sets
412367b (Peter Kjellerstedt) project: Use dicts to keep track of copyfiles and linkfiles
47c24b5 (Peter Kjellerstedt) manifest: Make include groups propagate to extend-project elements
be33106 (Gavin Mak) wipe: Add new `repo wipe` subcommand
5998c0b (Mike Frysinger) tests: manifest_xml: convert most path usage to pathlib
877ef91 (Peter Kjellerstedt) man: Regenerate after manifest update
4ab2284 (Peter Kjellerstedt) manifest: Make extend-project support copyfile, linkfile and annotation

Gavin Mak

unread,
Dec 10, 2025, 3:09:37 PM (6 days ago) Dec 10
to Repo and Gerrit Discussion
Correction, *repo v2.60 has been released*, not v2.59

Gavin Mak

unread,
Dec 11, 2025, 3:35:55 PM (5 days ago) Dec 11
to Repo and Gerrit Discussion
v2.60 has been promoted to stable.

Stefan Lengfeld

unread,
Dec 14, 2025, 6:59:58 PM (2 days ago) Dec 14
to Repo and Gerrit Discussion
Hi Gavin Mak,

I just noticed today that a "git fetch" from the repo mirror https://android.googlesource.com/tools/repo is failing. The error message is

    $ git fetch
    error: cannot update ref 'refs/heads/stable': trying to write non-commit object 309df5f067e1ffb4351c9cdad3c76005c41aa43e to branch 'refs/heads/stable'
    From https://android.googlesource.com/tools/repo
     ! b5991d7...309df5f stable     -> stable  (unable to update local ref)

It seems that you (or someone else) has pushed a git tag object instead of a git commit object. In my local checkout I can see:

    $ git cat-file -t 309df5f067e1ffb4351c9cdad3c76005c41aa43e
    tag

And you can see the full object contents with "git show 309df5f067e1ffb4351c9cdad3c76005c41aa43e".

Do you have any intentions to fix this, e.g. by pushing the commit object instead? Otherwise I (and mostly others) have to fix it up locally and manually in the checkout.

I just tested it with fresh "git clone". There it works. A tag object can be a branch. -.- So only existing checkouts are affected.

Cheers,
Stefan

Stefan Lengfeld

unread,
Dec 15, 2025, 2:33:41 PM (24 hours ago) Dec 15
to Repo and Gerrit Discussion
It's fixed. I can do a "git fetch" successfully now. Thanks.

Gavin Mak

unread,
Dec 15, 2025, 7:46:09 PM (19 hours ago) Dec 15
to Repo and Gerrit Discussion
Some users reported issues with `--no-auto-gc` on older versions of Git (https://crbug.com/gerrit/468589976) so we've rolled back stable to v2.59.

I've since released v2.60.1 which conditionally adds `--no-auto-gc` for supported Git versions and skips the bloat check at the end of initial syncs. I plan to promote v2.60.1 to stable tomorrow.

Reply all
Reply to author
Forward
0 new messages