Dans Git, toute modification apportée à la validation - même une validation différente (modifiée) fait que l'enfant commet devient un nouveau commit enfant.
Si avant rebasage, vous avez:
x - x - x - you - him - x
Ensuite, une fois que vous rebasage avez vraiment:
x - x - x - you - him - x
\
you' - him' - x'
même si vous donnez him'
le message même de commettre exactement comme him
, parce que dans le hachage him'
est un parent différent commit (you'
) alors il est dans him
, ce qui signifie que le hachage va changer (même si l'info du committer reste la même) - ce n'est plus le même commit.
Maintenant, d'accord rebasage supprime effectivement les liens vers you - him - x
, et ils seront les déchets ramassés, laissant juste:
x - x - x - you' - him' - x'
Il n'y a aucune raison de vous retirer comme commiter - il montre la vérité sur ce qui est arrivé . Vous pouvez "simuler" en changeant votre user.name et user.email à son nom et email, puis ré-amender son commit ... et il y a probablement une commande de plomberie de bas niveau ou une autre façon de le faire directement avec des drapeaux. Mais pourquoi? Il n'y a rien à gagner. Il est l'auteur original, et vous êtes maintenant l'auteur de ce nouveau commit you'
.
Si vous voulez clarifier ce qui s'est passé, vous pouvez également modifier son message de validation pour ajouter une note: [réitéré en raison d'un rebasage, pas de modification] ou similaire.
Je m'attendrais à ce que vous apparaissiez en tant que committer, et qu'il apparaisse en tant qu'auteur. Est-ce ce que vous voyez? Aussi: vous * avez * fait quelque chose à son commit; vous l'avez basé sur un code différent. Ce n'est plus le changement qu'il a commis. –