Sto riscontrando un problema con il rebasing dal master su un ramo 'deploy' all'interno di uno dei miei repository.Git rebase fallisce continuamente e richiede un intervento di unione manuale
mio repo si effettua come segue:
master - of course, the main branch
deploy - a branch created where files like Capfile, deploy.rb etc are created and configured - these changes will NEVER be merged back into Master
In generale il mio flusso di lavoro è:
- fare lo sviluppo sul ramo maestro ... prova, sorriso, commit.
- Checkout ramo
deploy
- Eseguire
git rebase master
sul ramo Deploy - questo usato per funzionare senza problemi - Push to remoto e quindi eseguire
cap deploy
- Relax
Il problema ora sto avendo è che quando eseguo git rebase master
sul ramo di distribuzione viene generato un errore di unione/fusione manuale a 3 vie richiesto (non penso che il messaggio di errore sia davvero abbastanza generico da postare). Git mi dice di eseguire una fusione, quindi usare git rebase --continue
per terminare, il che non funziona mai.
Quello che ho trovato "funziona" è in esecuzione git rebase master --interactive
, pulendo l'elenco di selezione (sono presenti 5 o più "commit" ma con numeri di riferimento diversi (stesso messaggio) in questo elenco, quindi selezionerò uno di loro) e quindi eseguire l'unione manualmente. Una volta che ho fatto questo per ogni commit, posso continuare il rebase e tutto è felice ...
Fino alla prossima volta ho bisogno di eseguire un rebase.
Quindi qualcuno sa cosa potrebbe essere felice? Il progetto non è realmente 'segreto', quindi se necessario posso pubblicare messaggi, registri, grafici ecc filiali
Grazie
Quanti commit hai sul tuo ramo di distribuzione e possono essere schiacciati? rebase deve conservare tutti i commit intermedi in una lista di commit e sembra che alcuni di questi ora causino conflitti artificiali mentre tentano di preservare uno stato intermedio artificiale che non ha più senso. –