Come capisce Git può ottenere un file più nuovo e non mostrarlo in diff
-
21-12-2019 - |
Domanda
Diciamo che creiamo una filiale new_branch
.Cambiamo 1 file lì, commettere questo file, spingere e creare una richiesta di tiro a parent rep/master
.
Nel frattempo il genitore rep ha cambiato un bel po ', diciamo che 100 file sono stati modificati ma che 1 file non è stato toccato.
E ancora, tirare Richiesta Diff mostrerà che solo 1 file è stato modificato.
Allora, come GIT
capisce che in realtà 1 file deve essere unito solo e non 101 file.Voglio dire parent rep/master
Confronta con child rep/new_branch
Infatti 101 file sono stati modificati e non 1 file ..
Soluzione
È un unione a tre vie, il che significa che Git confronterà la tua evoluzione contro l'antenato comune tra:
- .
- il tuo ramo
- The partrerepo branch
Quella differenza è quella richiesta per l'unione.
Vedi di più a "< Perché un unione a 3 vie vantaggioso su un unico unico Merge? ".
.A----C (yourBranch: 1 file modified, compared to A, the common ancestor)
\
--B (parentRepo master: 100 files modified)
.
Quando si unisce:
A----C
\ \
--B--D (only one file is merged to parentRepo branch)
.
Vedi di più a "< ProLibro git: fusione di base ":