In un VCS tradizionale, posso capire perché non si impegnano i file non risolti perché si potrebbe interrompere la compilazione. Tuttavia, non capisco perché non si debbano impegnare file non risolti in un DVCS (alcuni di essi in realtà impediscono di impegnare i file).
Invece, penso che il tuo repository debba essere bloccato da che spinge e che tira , ma che non sta commettendo.
Essere in grado di impegnarsi durante il processo di fusione ha diversi vantaggi (come la vedo io):
- Le effettive modifiche di unione sono nella cronologia.
- Se l'unione era molto grande, potresti eseguire commit periodici.
- Se hai commesso un errore, sarebbe molto più semplice eseguire il rollback (senza dover ripetere l'intera unione).
- I file potrebbero rimanere contrassegnati come non risolti fino a quando non sono stati contrassegnati come risolti. Ciò impedirebbe di spingere / tirare.
Potresti anche avere un set di changeset che funge da fusione invece che solo uno. Ciò ti consentirebbe comunque di utilizzare strumenti come git rerere
.
Quindi perché si sta commettendo con file non risolti disapprovati / impediti? C'è qualche altra ragione oltre alla tradizione?