Come modificare l’autore di commit precedenti

Cerca

Anzitutto apriamo questo articolo precisando che modificare i commit passati è un’operazione sulla commit history di un repository e tale operazione può essere rischiosa. Questa operazione non va presa troppo alla leggera, infatti durante questo processo di modifica si creeranno nuovi commit objects, i quali possono diventare un serio problema per i nostri collaboratori se hanno già basato il loro lavoro su alcuni dei commit originali che saranno oggetto di modifica.

In conclusione, pensa due volte prima di riscrivere la commit history del tuo repository.

Modificare l'autore dell'ultimo commit

Nel caso in cui si voglia modificare l’autore dell’ultimo commit, Git offre una strada molto facile per farlo.

				
					git commit --amend --author="Mario Rossi <mario@rossi.org>"
				
			

Modificare l'autore usando Interactive Rebase

Interactive Rebase è tra i tools di Git quello che può essere considerato un vero coltellino svizzero che permette di agire su quasi ogni cosa. Essendo però uno strumento tanto potente, significa anche che ci si può letteralmente sparare nei piedi se lo si utilizza male. Prima di eseguire operazioni di cui non si è sicuri è meglio documentarsi a questo link.

Il primo passo è identificare l’ultimo commit che consideriamo valido ed invocare il comando di rebase indicandone l’hash.

				
					git rebase -i -p 0ad14fa5
				
			

Si aprirà un editor dove possiamo indicare tutti i commit di cui vogliamo cambiare i dettagli. Per fare ciò anteponiamo la keyword “edit” prima dell’hash.

Git a questo punto ci guiderà attraverso ogni commit, dandoci la possibilità di cambiarne i dettagli.

				
					Stopped at 5772b4bf2... Add images to about page
You can amend the commit now, with
    git commit --amend
Once you are satisfied with your changes, run
    git rebase --continue
				
			

Il lavoro ora consiste nel correggere le informazioni dell’autore iterando per ogni commit che abbiamo precedentemente marcato con la keyword “edit”.

				
					git commit --amend --author="Mario Rossi <mario@rossi.org>" --no-edit
git rebase --continue
				
			

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Most Recent

Come cambiare il server DNS su Ubuntu

Cambiare il server DNS usato da Ubuntu è un’operazione piuttosto semplice, ma che comunque deve essere condotta con attenzione. Vediamo quindi in questo articolo come

Partners