Caching
How do I write a good cache key?
Quick answer
Hash exactly the files that determine the cached content — usually the lockfile — and nothing else.
The detail that matters
Add restore-keys with a shorter prefix so a near-miss still restores something useful rather than starting cold.
Your next build could be twice as fast, at half the price
Start free. Migrating away is the same one line, and we publish that diff too.
Related
Why does Cargo rebuild everything?Your cache key changes on every run, or target/ is not cached at all.Why is cache restore slow?GitHub throttles cache bandwidth, so a multi-gigabyte cache can take minutes to restore.What are restore-keys?Ordered prefixes tried when the exact cache key misses, so a partial match can still be restored.Why does my cache miss every run?The key includes something that changes every run — commonly github.sha or a timestamp.