[roll recipes_version.txt] checkout: Use new approach to caching

Disable use of the upstream caching functionality. It works for single
repositories but does not cache submodules. Instead, do a full non-bare
checkout of the repository in question, with submodules. Not doing a
bare checkout because bare checkouts don't work with submodules
(http://b/110807286). There's also no good way to clone with submodules
from a local path, so copying the entire tree at the suggestion of the
git-core team.

This is heavily based on the caching section of
https://fuchsia.googlesource.com/infra/recipes/+/cffb534560ac7cc539398ac186e19ca1e6004540/recipe_modules/git/api.py#276

Tested with one downstream project that usually took 3-4 minutes to
checkout before this change. With this change the cold checkout time
remained unchanged but with a warm cache checkout time was 30-40
seconds.

Original-Bug: b/217449281
Original-Reviewed-on: https://pigweed-review.googlesource.com/c/infra/recipes/+/84744

https://pigweed.googlesource.com/infra/recipes
recipes_version.txt Rolled-Commits: 2e54d38b330e600..d9e741216bc46e9

GitOrigin-RevId: 75305169a77ca960223782d752633cba48bb0e9e
Change-Id: I4970ad75d68da2da4c922fb5c2074f5f06fd42d7
1 file changed
tree: aa3866ffa57d5b594363e9da22d5ef13d06ce5a7
  1. generated/
  2. AUTHORS
  3. LICENSE
  4. README.md
  5. recipes_version.txt
README.md

Pigweed Config

This repository contains configs for Pigweed. The source of truth for these configs is the corresponding internal repository.