Sto tentando di eliminare gli ultimi 2 commit in uno dei miei repository GitHub. Ho provato come suggerito here: git push -f origine HEAD ^^: master. Sembra che funzioni, gli ultimi due commit vengono rimossi.Come eliminare l'ultimo n commit su Github e localmente?
Quindi li ho cancellati dal mio repository locale con git rebase -i HEAD ~ 2. Rimuovo le linee di quelle relative a quelle di commit e controllo con git log che siano state rimosse correttamente.
Successivamente, apporto alcune modifiche nel mio repository locale, eseguo un nuovo commit e invio a GitHub. Il problema è che nel mio account GitHub ho i due commit precedenti che ho provato ad eliminare.
Penso che il problema sia nel mio repository locale perché se cloto il mio repository Github sul mio locale, e apporto alcune modifiche qui quando spingo un nuovo commit, quei vecchi commit non vengono passati a GitHub.
Qualche idea?
Se hai già inviato questa modifica a un repository remoto. Puoi rimuoverlo con git push -f –
Puoi generalizzare questo per l'ultimo n numero di commit? –
@ user_19 puoi fare cose come 'git reset --hard HEAD^4' o' git reset --hard HEAD ~ 4'. Tuttavia, le cose potrebbero diventare un po 'complicate se la cronologia contiene unioni. Puoi trovare ulteriori informazioni su come specificare le revisioni nella sezione corrispondente [qui] (https://www.kernel.org/pub/software/scm/git/docs/git-rev-parse.html). –