Come modificare l’autore di commit precedenti

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 modificare l’autore di commit precedenti

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

Come eliminare un Git remote branch

Mentre in questo articolo abbiamo trattato come eliminare un Git local branch, qui di seguito trattiamo come eliminare un Git remote branch. Anche in questo caso,

Partners