Cela est dû à la différence entre le nom d'utilisateur de l'entreprise git et le mien
Lors de la soumission du code, la configuration utilisateur globale de git est utilisée par défaut, le nom d'utilisateur xiaoli
puis poussée vers github
Après cela, j'ai configuré l'utilisateur git du projet et utilisé xiaowang
pour pousser à nouveau le code
Que dois-je faire si je souhaite réécrire l'adresse e-mail de l'utilisateur du premier commit git ?
J'utilise
git rebase -i HEAD~2
Mais seules les informations de la dernière soumission apparaissent.
Mes démarches sont un peu lourdes, j'ai donc préparé des photos pour annotation :
Tout d'abord, ouvrez l'enregistrement de l'historique via
gitk
, comme indiqué ci-dessous :Dans cet exemple, j'essaie de modifier les informations nom d'utilisateur/email correspondant à la troisième soumission
more tests for later change cases
.La première étape consiste à copier la
update readme
valeur de la quatrième soumissionSHA1 ID
, comme indiqué dans l'image ci-dessus, en sélectionnant une partie de4535579
(elles ne sont pas toutes nécessaires, les huit premières à mon avis sont ça suffit)La deuxième étape consiste à revenir à la ligne de commande et à commencer à exécuter l'opération
rebase -i
, comme suit :A ce moment,
git
appellera automatiquement l'éditeur configuré pour ouvrir une interface, comme suit :La troisième étape consiste à modifier le
pick
de la première ligne de données (le commit que nous prévoyons de modifier) enedit
, comme suit :Enregistrez et quittez, vous pouvez voir les résultats suivants :
Cool, maintenant nous pouvons facilement modifier les informations utilisateur via
.git commit --amend
Le fonctionnement est le suivant :Continuer pour terminer
rebase
,Ouvrez
gitk
à nouveau et profitez de vos résultats :Enfin, synchronisez le résultat de la falsification de l'enregistrement de l'historique avec le serveur via
git push --force