Git push时警告邮箱暴露,推送失败

旧的git本地仓库上传到新建的gitee仓库时,出现警告邮箱暴露,push失败

vbnet 复制代码
Push will publish a hidden email, make email public or abandon related commits
remote: error: hook declined to update refs/heads/main

解决方案: 查看当前提交记录中的邮箱,是否和gitee中默认邮箱设置中给的提交邮箱一致

bash 复制代码
# 列出所有唯一邮箱及其出现次数
git log --all --format='%ae' | sort | uniq -c | sort -rn

如果不一致,可修改记录中的邮箱。先全局设置提交邮箱为gitee默认邮箱:

arduino 复制代码
git config --global user.email "xxx@user.noreply.gitee.com"

查看当前生效的邮箱设置:

arduino 复制代码
git config user.email

再更新最新的提交但push失败记录中的邮箱:

css 复制代码
# 修正最近一次提交的作者信息
git commit --amend --reset-author --no-edit

如果提交记录中还有之前的git日志,也要更新邮箱为可公开的邮箱:

sql 复制代码
# 使用 git filter-repo(推荐,比 filter-branch 更安全高效)
# 先安装:pip3 install git-filter-repo 或 brew install git-filter-repo

git filter-repo --email-callback '
    if email == b"要替换的邮箱":
        return b"gitee默认可公开的提交邮箱"
    return email
'

再次查看提交记录中的邮箱:

perl 复制代码
# 最近一次提交的作者邮箱
git log -1 --format="%ae"

# 最近 N 次提交的邮箱(检查历史是否一致)
git log -n 5 --format="%h %ae %s"

如果正确无误,可以再次git push;如果还是错的,可以考虑直接git clone线上数据库,然后把项目文件拷贝进来,记得先全局设置提交邮箱为gitee默认邮箱,然后再git add、commit、push

相关推荐
A心有千千结4 小时前
通过 SSH 反向代理让服务器借用本机网络访问 GitHub 的最佳实践
linux·服务器·网络·git·ssh·github
SL_staff4 小时前
计息规则不再等IT:JVS-Rules函数计算器在金融计息场景的技术实践
java·git·全栈
-恰饭第一名-6 小时前
Codex 实操:用 Git worktree 隔离任务、检查分支和回收目录
git
KING-WU5128 小时前
Git 版本控制器实战指南
大数据·git·elasticsearch
Zhichao_979 小时前
VSCode+AI操作Git、GitHub
git·github
EchoMind-Henry9 小时前
Anthropic自建Git替代品,先看替换了什么
git
墨云安全10 小时前
自动化渗透测试工具有哪些?2026 年引擎原理、任务编排与误报抑制实践
git·测试工具·网络安全·渗透测试·自动化
-恰饭第一名-11 小时前
Codex 任务上下文整理:事实清单、只读检查与开场模板
git
打盹的小pig20 小时前
git pull 报错
git