Da Anonimo (non verificato) , 29 Aprile 2026

Sinossi

git config --global credential.helper <helper>
git credential fill
git credential approve
git credential reject

Descrizione

Il macchinario git credential gestisce l'autenticazione per i remote HTTPS. Piuttosto che chiedere username e password ad ogni push, Git delega a un credential helper che memorizza le credenziali in sicurezza. Helper includono cache (in memoria per qualche minuto), store (file in chiaro), osxkeychain (macOS Keychain), manager (Git Credential Manager su Windows/macOS/Linux) e libsecret (Linux GNOME).

Raramente chiami git credential direttamente — configuri un helper una volta e Git lo invoca trasparentemente. Le configurazioni moderne (specialmente con GitHub) usano token OAuth o personal access token protetti da 2FA memorizzati in un keyring di sistema.

Nell'uso quotidiano, git credential si integra con alias e CI.

Capire il modello dati di Git aiuta a prevedere i risultati.

Opzioni comuni

Sottocomando / ConfigDescrizione
credential.helperImposta il credential helper da usare.
credential.useHttpPathInclude il path dell'URL nella chiave di lookup.
fillPlumbing: chiede agli helper le credenziali.
approve / rejectDice agli helper se un tentativo è riuscito o fallito.
credential.<url>.helperHelper specifico per URL.
credential.helper "cache --timeout=3600"Cache in memoria configurabile.

Esempi

git config --global credential.helper osxkeychain
# macOS: memorizza credenziali in Keychain

git config --global credential.helper manager
# Cross-platform: Git Credential Manager

git config --global credential.helper "cache --timeout=3600"
# Cache per un'ora in memoria

# Helper per host:
git config --global credential.https://github.com.helper "!gh auth git-credential"
# Usa la GitHub CLI come helper

Errori comuni

L'helper store scrive testo in chiaro in ~/.git-credentials — bene per VM usa-e-getta, pericoloso su macchine condivise. Evita le password completamente; usa personal access token o chiavi SSH per accesso in scrittura. Dopo aver ruotato un token, esegui git credential reject o pulisci la cache per forzare un refresh.

Comandi correlati

git config, git push, git fetch, ssh-agent