How to Cache Git Credentials for Easy Authentication
You can cache Git credentials using the
git config --global credential.helper cache command, which stores your credentials in memory for a limited time. For longer caching, use credential.helper store to save credentials permanently in a file.Syntax
The basic syntax to cache Git credentials is:
git config --global credential.helper cache: Caches credentials in memory temporarily.git config --global credential.helper 'cache --timeout=3600': Caches credentials for 3600 seconds (1 hour).git config --global credential.helper store: Saves credentials permanently in a plain text file.
bash
git config --global credential.helper cache
git config --global credential.helper 'cache --timeout=3600'
git config --global credential.helper storeExample
This example shows how to cache your Git credentials in memory for 15 minutes (900 seconds). After running this, Git will not ask for your username and password again during this time.
bash
git config --global credential.helper 'cache --timeout=900'Common Pitfalls
1. Using credential.helper store saves passwords in plain text, which is insecure. Use it only if you trust your machine.
2. Forgetting to set the timeout causes credentials to be cached for 15 minutes by default. Adjust timeout as needed.
3. On Windows, use the Git Credential Manager instead of cache for better security.
bash
git config --global credential.helper store # Saves credentials permanently (insecure) # Better: cache with timeout git config --global credential.helper 'cache --timeout=3600' # Cache for 1 hour
Quick Reference
| Command | Description |
|---|---|
| git config --global credential.helper cache | Cache credentials in memory for 15 minutes (default) |
| git config --global credential.helper 'cache --timeout=3600' | Cache credentials in memory for 1 hour |
| git config --global credential.helper store | Save credentials permanently in plain text file |
| git config --global credential.helper manager-core | Use Git Credential Manager Core (Windows/macOS/Linux) for secure storage |
Key Takeaways
Use
credential.helper cache to temporarily cache Git credentials in memory.Set a timeout with
cache --timeout=SECONDS to control how long credentials are cached.Avoid
credential.helper store unless you trust your machine, as it saves passwords in plain text.On Windows and macOS, prefer Git Credential Manager for secure credential storage.
Caching credentials saves time by preventing repeated authentication prompts during Git operations.