Qual è la differenza tra i comandi di modifica e squash? Ho provato entrambi e ho scoperto che entrambi stanno facendo lo stesso per una corretta gestione.Git - Differenza tra i comandi di modifica e squash
risposta
In Git, commit sono raramente effettivo distrutto, hanno appena diventano orfani, o indipendente, nel senso che non sono puntate o raggiungibile da un riferimento come un ramo o tag.
"modifica" e "schiacciamento" sono concetti simili a.
In genere, che modifica è una singola operazione di commit in cui si desidera combinare il lavoro che è stato gestito con il commit HEAD. Questo può essere molto comodo se hai appena creato un commit e ti rendi conto che devi aggiungere del contenuto ad esso. Richiama semplicemente il comando di commit e usa l'opzione --amend
.
Lo schiacciamento è il termine più astratto. Direi che un emendamento è un tipo di squash. Ogni volta che unisci i commit, puoi dire che li stai schiacciando. Se hai lavorato per un po 'su un ramo e hai commesso 5 commit che dovrebbero essere 1 commit, puoi rebase in modo interattivo per schiacciarli insieme.
Ci sono diversi modi in Git per modificare/squash, ma sono tutti incentrati sul concetto di organizzazione della cronologia dei commit (che significa riscrivere la cronologia di un ramo) con questo spirito di renderlo più facile.
amend
modifica solo l'ultimo commit.
squash
è come unire più commit in un singolo commit.
Per un solo commit, i loro effetti possono sembrare uguali.
ha corretto la mia domanda come da lei suggerito. –