GitHub更改作者信息
https://help.github.com/cn/github/using-git/changing-author-info
修改邮箱导致提交绿色标识框消失。
要更改现有提交中记录的名称和/或电子邮件地址,您必须重写 Git 仓库的整个历史记录。
使用脚本更改仓库的 Git 历史记录
我们创建了一个用于更改任何提交的脚本,可将此前在作者或提交者字段中填写的旧电子邮件地址更改为正确的名称和电子邮件地址。
注:运行此脚本会重写所有仓库协作者的历史记录。 完成这些步骤后,任何拥有复刻或克隆的人都必须获取重写的历史记录,并将任何本地更改变基为重写的历史记录。
运行此脚本之前,您需要:
- 显示在要更改的作者/提交者字段中的旧电子邮件地址
- 要将此类提交归因于的正确名称和电子邮件地址
打开 Terminal(终端)。
为仓库创建一个全新的裸克隆:
git clone --bare https://github.com/user/repo.git cd repo.git
复制并粘贴脚本,根据您收集的信息替换以下变量:
OLD_EMAIL
CORRECT_NAME
CORRECT_EMAIL
#!/bin/sh git filter-branch --env-filter ' OLD_EMAIL="your-old-email@example.com" CORRECT_NAME="Your Correct Name" CORRECT_EMAIL="your-correct-email@example.com" if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ] then export GIT_COMMITTER_NAME="$CORRECT_NAME" export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL" fi if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ] then export GIT_AUTHOR_NAME="$CORRECT_NAME" export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL" fi ' --tag-name-filter cat -- --branches --tags
按 Enter 键以运行脚本。
审查新的 Git 历史记录以查找错误。
将更正的历史记录推送到 GitHub:
git push --force --tags origin 'refs/heads/*'
清理临时克隆:
cd .. rm -rf repo.git
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 tuyrk@qq.com
文章标题:GitHub更改作者信息
文章字数:439
本文作者:神秘的小岛岛
发布时间:2019-12-18, 23:16:10
最后更新:2020-07-14, 17:41:03
原始链接:https://www.tuyrk.cn/changing-author-info/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。