Conflitti di Merge
Scorri per mostrare il menu
Comprendere i conflitti di merge
Un conflitto di merge si verifica quando Git non riesce a riconciliare automaticamente le modifiche apportate su due branch divergenti. Questo accade tipicamente quando vengono effettuate modifiche alle stesse righe di codice negli stessi file in entrambi i branch dopo il loro ultimo antenato comune.
Esempio di workflow
Per prima cosa, elencare tutti i branch nel repository:
git branch
Attualmente ti trovi sul branch master, quindi modifica il file branch_learning.txt aggiungendo una nuova riga e conferma direttamente questa modifica:
echo "New line from the master branch" >> branch_learning.txt
git commit -a -m "Add a new line specifying the master branch to branch_learning.txt"
Ora passa al branch feature, aggiungi una nuova riga diversa al file branch_learning.txt e conferma direttamente questa modifica:
git checkout feature/new-feature
echo "New line from the feature branch" >> branch_learning.txt
git commit -a -m "Add a new line specifying the feature branch to branch_learning.txt"
Entrambi i commit sono andati a buon fine, quindi torna al branch master e unisci il branch feature ad esso:
git checkout master
git merge feature/new-feature
Si è verificato un conflitto di merge perché la stessa riga nello stesso file è diversa tra i rami, e Git non può risolverlo automaticamente.
Eseguiamo anche il comando git status per ottenere maggiori informazioni sul conflitto:
git status
Questo messaggio indica che è necessario annullare la fusione oppure risolvere i conflitti e successivamente eseguire il commit delle modifiche. Si procederà con la seconda opzione e si risolveranno i conflitti nel prossimo capitolo.
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione