gitÀïÔõÑùɾ³ýÓʼþÐÅÏ¢
×÷ΪһÃû¿ª·¢Õߣ¬Ê¹ÓÃgitÊDz»¿É×èÖ¹µÄ¡£gitÊÇÒ»¸ö°æ±¾¿ØÖÆϵͳ£¬Ëü¿ÉÒÔ×ÊÖúÄã×·×Ù´úÂë¸ü¸Ä£¬²¢ÇÒ»¹ÔÊÐíÄã»Ø¹öµ½½ÏÔçµÄ°æ±¾¡£ÔÚgitÖУ¬Ã¿¸öÌá½»¶¼ÓëÒ»¸ö×÷ÕߺÍÒ»¸öµç×ÓÓʼþµØµãÏà¹ØÁª¡£ÓÐʱ¼ä£¬ÎÒÃÇ¿ÉÄÜÐèҪɾ³ýijЩ¹ýʧµÄÓʼþÐÅÏ¢¡£½ÓÏÂÀ´£¬ÎÒÃǽ«ÏÈÈÝÔõÑùÔÚgitÖÐɾ³ýÓʼþÐÅÏ¢¡£
ÏàʶGitµÄÉèÖÃ
ÔÚ×îÏÈɾ³ýÓʼþÐÅϢ֮ǰ£¬ÎÒÃÇÊ×ÏÈÐèÒªÏàʶGitµÄÉèÖá£ÎÒÃÇ¿ÉÒÔÔÚGitµÄÈ«¾ÖÉèÖÃÖÐÉèÖÃĬÈϵÄÓû§ÃûºÍµç×ÓÓʼþµØµã¡£ÒÔÏÂÏÂÁÉèÖÃÈ«¾ÖµÄÓû§ÃûºÍµç×ÓÓʼþµØµã¡£
$ git config --global user.name "Your Name" $ git config --global user.email "your_email@example.com"
µÇ¼ºó¸´ÖÆ
Çë×¢ÖØ£¬Í¨¹ýÔÚÖÕ¶ËÖÐÊäÈëgit configÏÂÁÎÒÃÇ¿ÉÒÔÁгöÄ¿½ñGitÉèÖõÄËùÓÐÑ¡Ï²¢Éó²éÈ«¾ÖºÍ´æ´¢¿âÌض¨ÉèÖõÄÖµ¡£
ÔÚÌá½»Öиü¸ÄÓʼþµØµã
ÈôÊÇÔÚÌá½»½ÓÂëʱ£¬ÎÒÃÇûÓÐ׼ȷÉèÖÃÓû§ÐÅÏ¢£¬Ôò¿ÉÄÜ»áʹÓò»×¼È·µÄµç×ÓÓʼþµØµã¡£ÔÚÕâÖÖÇéÐÎÏ£¬ÎÒÃÇÐèÒª¸ü¸ÄGitÌá½»ÖеÄÓʼþµØµã£¬¿ÉÒÔʹÓÃÒÔÏÂÏÂÁ
$ git commit --amend --author="New Author Name <new_email_address>"</new_email_address>
µÇ¼ºó¸´ÖÆ
Õâ¸öÏÂÁ·¿ªÄ¬ÈÏÎı¾±à¼Æ÷£¬²¢ÈÃÄú¸ü¸ÄÌá½»µÄ×÷Õߺ͵ç×ÓÓʼþµØµã¡£Çë×¢ÖØ£¬ÈôÊÇÄúʹÓÃÁË-VÑ¡ÏÔò²»»á·¿ªÄ¬ÈÏÎı¾±à¼Æ÷¡£
ɾ³ýÒÑÌá½»µÄÓÊÏäµØµã
ÓÐʱ£¬ÎÒÃÇ¿ÉÄÜÐèÒª´ÓÕû¸ö´æ´¢¿âÖг¹µ×ɾ³ýij¸öµç×ÓÓʼþµØµã£¬Õâ¿ÉÄÜÊÇÓÉÓڸõص㲻ÔÙÊÇÒ»¸öÓÐÓõĵص㣬»òÕßÊÇÓÉÓڸõص㱻й¶ÁË¡£ÔÚÕâÖÖÇéÐÎÏ£¬ÎÒÃÇÐèҪͨ¹ýÒÔÏ°취ÔÚGitÖÐɾ³ý¸Ãµç×ÓÓʼþµØµã¡£
°ì·¨1£ºÕÒµ½ËùÓаüÀ¨¸ÃÓʼþµØµãµÄÌá½»¼Í¼
Ê×ÏÈ£¬ÎÒÃÇÐèÒªÕÒµ½ËùÓаüÀ¨¸Ãµç×ÓÓʼþµØµãµÄÌá½»¼Í¼¡£ÎÒÃÇ¿ÉÒÔʹÓÃÒÔÏÂÏÂÁîÀ´²éÕÒÓë´Ëµç×ÓÓʼþµØµã¹ØÁªµÄÌá½»¼Í¼¡£
$ git log --author="email_address"
µÇ¼ºó¸´ÖÆ
Õ⽫ÁгöËùÓÐÓë´Ëµç×ÓÓʼþµØµã¹ØÁªµÄÌá½»¼Í¼¡£ÎÒÃÇ¿ÉÒÔ¼ì²éÿ¸öÌá½»¼Í¼²¢Éó²éÆäÊÇ·ñÊÇÓÉÎÒÃÇÏëҪɾ³ýµÄµç×ÓÓʼþµØµãËù½¨Éè¡£
°ì·¨2£ºÖØдÌá½»ÀúÊ·¼Í¼
Ò»µ©ÎÒÃÇÕÒµ½ÁËËùÓеÄÌá½»¼Í¼£¬ÎÒÃǾͿÉÒÔʹÓÃÒÔÏÂÏÂÁÿ¸öÌá½»¼Í¼ÖØÐÂдÈë¡£
$ git filter-branch --commit-filter ' if [ "$GIT_AUTHOR_EMAIL" = "email_address" ]; then GIT_AUTHOR_NAME="NewAuthorName"; GIT_AUTHOR_EMAIL="new_email_address@example.com"; git commit-tree "$@"; else git commit-tree "$@"; fi' HEAD
µÇ¼ºó¸´ÖÆ
Õâ¸öÏÂÁî»á±éÀúÿ¸öÌá½»£¬²¢½«ÆäÖØдΪʹÓÃеÄ×÷Õߺ͵ç×ÓÓʼþµØµã¡£
°ì·¨3£ºÇ¿ÖÆÍÆË͵½Ô¶³Ì´æ´¢¿â
Ò»µ©ÎÒÃÇÍê³ÉÁËÌá½»ÀúÊ·¼Í¼µÄÖØд£¬ÎÒÃÇÐèÒª½«¸ü¸ÄÍÆË͵½Ô¶³Ì´æ´¢¿â¡£ÎÒÃÇ¿ÉÒÔʹÓÃÒÔÏÂÏÂÁîÀ´Ç¿ÖÆÍÆË͵½Ô¶³Ì·ÖÖ§¡£Çë×¢ÖØ£¬Õâ»áÁýÕÖÔ¶³Ì´æ´¢¿âÖеÄÏÖÓÐÌá½»ÀúÊ·¼Í¼¡£
$ git push --force
µÇ¼ºó¸´ÖÆ
½áÂÛ
ÔÚGitÖÐʹÓõç×ÓÓʼþµØµãÊǺܳ£¼ûµÄ£¬¿ÉÊÇÓÐʱ¼äÎÒÃÇ¿ÉÄÜÐèҪɾ³ý»ò¸ü¸ÄÓʼþµØµã¡£±¾ÎÄÌṩÁËһЩҪÁìÀ´É¾³ý»ò¸ü¸ÄGitÌá½»Öеĵç×ÓÓʼþµØµã¡£Çë¼Ç×Å£¬ÔÚ¸ü¸Ä»òÖØдGitÌá½»ÀúÊ·¼Í¼ʱ£¬Îñ±ØСÐÄÉóÉ÷¡£
ÒÔÉϾÍÊÇgitÀïÔõÑùɾ³ýÓʼþÐÅÏ¢µÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡