Da Anonimo (non verificato) , 29 Aprile 2026

Sinossi

git cat-file (-t | -s | -p | -e) <object>
git cat-file --batch
git cat-file --batch-check

Descrizione

Il comando git cat-file è uno strumento plumbing che legge oggetti Git grezzi dal database degli oggetti. Può stampare il tipo di un oggetto (blob, tree, commit, tag), dimensione e contenuto.

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.

Da Anonimo (non verificato) , 29 Aprile 2026

Sinossi

git config [--global | --system | --local] <key> [<value>]
git config --list
git config --edit

Descrizione

Il comando git config legge e scrive la configurazione Git. Le impostazioni vivono in tre layer: a livello sistema (/etc/gitconfig), per utente (~/.gitconfig o ~/.config/git/config) e per repository (.git/config). I layer più specifici sovrascrivono quelli più generali.

Da Anonimo (non verificato) , 29 Aprile 2026

Sinossi

git stash push -p -m <msg> -- <pathspec>
git stash branch <newbranch> [<stash>]
git stash create
git stash store -m <msg> <sha>

Descrizione

Oltre a git stash push e git stash pop, il macchinario stash offre potenti capacità per workflow avanzati.

Da Anonimo (non verificato) , 29 Aprile 2026

Sinossi

git range-diff <range1> <range2>
git range-diff <base> <rev1> <rev2>

Descrizione

Il comando git range-diff confronta due sequenze di commit (tipicamente un branch prima e dopo un rebase) e mostra cosa è cambiato tra di loro a livello di patch. Questo è molto più utile di un normale git diff per rivedere i rebase, perché abbina i commit corrispondenti e evidenzia solo le differenze sostanziali.

Da Anonimo (non verificato) , 29 Aprile 2026

Sinossi

git config --global rerere.enabled true
git rerere status
git rerere diff
git rerere clear

Descrizione

Il comando git rerere (Reuse Recorded Resolution) registra come risolvi un conflitto la prima volta e riproduce la stessa risoluzione automaticamente la volta successiva che lo stesso conflitto appare. È prezioso quando feature branch di lunga durata sono ripetutamente mergiati o rebasati su una base in movimento — senza rerere, ri-risolvi gli stessi conflitti ogni volta.

Da Anonimo (non verificato) , 29 Aprile 2026

Sinossi

git reflog [show] [<ref>]
git reflog expire [--expire=<time>] [--all]
git reflog delete <entry>

Descrizione

Il comando git reflog mostra la storia di dove ogni ref (HEAD, branch) ha puntato localmente. Ogni movimento — commit, checkout, reset, rebase — viene loggato con timestamp e ragione. Il reflog è la tua rete di sicurezza: anche dopo un'operazione "distruttiva" come git reset --hard, lo stato precedente è recuperabile finché l'entry reflog sopravvive (tipicamente 90 giorni).

Da Anonimo (non verificato) , 29 Aprile 2026

Sinossi

git bundle create <file> <git-rev-list-args>
git bundle verify <file>
git bundle list-heads <file>
git clone <file> <dir>

Descrizione

Il comando git bundle impacchetta la storia Git in un singolo file che può essere trasferito senza rete — tramite chiavetta USB, email o qualsiasi trasporto file. Il destinatario può clonare o fare fetch dal bundle come se fosse un remote. Questo è prezioso per sistemi air-gapped, connessioni lente o come formato di backup.

Da Anonimo (non verificato) , 29 Aprile 2026

Sinossi

git archive [--format=<fmt>] [--prefix=<p>/] [-o <file>] <tree-ish> [<path>...]

Descrizione

Il comando git archive crea un file tar o zip contenente i contenuti di qualsiasi tree (commit, tag o branch). A differenza di un semplice tar della working tree, include solo file tracciati a una specifica revisione ed esclude le directory .git. Questo lo rende ideale per produrre tarball di rilascio, distribuzioni sorgente e snapshot riproducibili.

Da Anonimo (non verificato) , 29 Aprile 2026

Sinossi

git notes add [-m <msg>] [<commit>]
git notes show [<commit>]
git notes append [-m <msg>] [<commit>]
git notes remove [<commit>]

Descrizione

Il comando git notes attacca metadati aggiuntivi ai commit senza riscriverli. Le note sono memorizzate nel proprio namespace di ref (refs/notes/commits per default) e sono visualizzate accanto ai commit in git log. Casi d'uso includono commenti di code review, stato build, link a ticket o sign-off aggiunti dopo il fatto.