I derivato dal master e creato un ramo chiamato extra_work. Poi ho apportato molte modifiche al master che includevano anche la rimozione di alcuni file. Più tardi, quando ho provato a unire il ramo "extra_work" nel master, non lo sta integrando completamente. Non sta aggiungendo i file che ho rimosso in master, fondamentalmente tutto il lavoro che avevo disfatto, ora lo voglio di nuovo nel mio master. Come faccio a unire questi due rami in modo che tutti i file/lavori aggiuntivi del mio ramo "extra_work" si uniscano in master. GrazieGit Merge - Non unire tutte le modifiche dal ramo remoto
risposta
Mi sono imbattuto nello stesso problema molto recentemente mentre eseguivo un importante refactoring. Ho risolto il problema eseguendo git rebase
, da master
rebasing su extra-work
. Non capisco appieno tutto questo, ma la fusione è andata terribilmente (come hai sperimentato tu) ma rifondare in questa particolare direzione è stato molto facile. Vedi il git book su rebasing: http://book.git-scm.com/4_rebasing.html
Rebase il tuo ramo extra_work
contro master
. Questo riavvolgerà il tuo ramo extra_work
allo stato quando si diramerà e applicherà il commit da master
a extra_work
. Riprenderà quindi tutti i commit da extra_work
su se stesso. Se si ispeziona git log
in seguito, si vedrà il commit da master
più indietro nella cronologia del ramo. Dovresti quindi essere in grado di unire a master
senza problemi.
git rebase master
- 1. Git: Ignora tutte le modifiche su un ramo locale divergente
- 2. Come evitare git merge per unire un file specifico dal trunk in un ramo e viceversa
- 3. Git - Come unire un ramo remoto nel master remoto
- 4. Come faccio a unire di nuovo nel ramo remoto
- 5. git merge non si unisce
- 6. Git: controlla un ramo mantenendo le modifiche non modificate
- 7. Come unire il master remoto al ramo locale
- 8. Git Unire e spingo
- 9. Come scartare tutte le modifiche apportate a un ramo?
- 10. Unisci le modifiche dal repository github remoto al repository locale
- 11. Come posso sovrascrivere, non unire, un ramo remoto in un altro ramo?
- 12. Git - Sostituire ramo locale con ramo remoto
- 13. Prendere tutte le mie modifiche sul ramo attuale e spostarle in un nuovo ramo in Git
- 14. Conflitto Git Merge - File remoto eliminato, file locale modificato
- 15. Git: impossibile eliminare permanentemente il ramo remoto
- 16. Perché Git non può unire le modifiche ai file con un genitore/master modificato?
- 17. Git: Lista modifiche non unite tutte in git
- 18. git push NON ramo corrente su remoto
- 19. Studio Android: impossibile da unire dal ramo SVN
- 20. Dopo git rm file; commit - come recuperare il file dal ramo remoto?
- 21. rollback un Git merge
- 22. Rinominare il ramo git remoto
- 23. come confermare le modifiche al nuovo ramo
- 24. Come unire il ramo gerrit ad un altro ramo gerrit
- 25. git push al ramo remoto esistente
- 26. Perché git non tenta di unire le modifiche ai file rinominati?
- 27. Unisci modifiche remote in un ramo che non è il ramo corrente
- 28. Git crea il ramo dal master estratto?
- 29. Git: impossibile passare al nuovo ramo remoto
- 30. git request-pull dal ramo locale al master remoto
spiegazione migliore (es. Più semplice) di rebase che ho sentito. Saluti. –
I rebases indicano come le modifiche devono passare dalla parte superiore della gerarchia verso il basso e le unioni sono il modo in cui risalgono verso l'alto. https://www.derekgourlay.com/blog/git-when-to-merge-vs-when-to-rebase/ – CrandellWS