无法推送含超大php_errors.log的WordPress项目至GitHub求助
解决WordPress项目推送到GitHub的大文件问题
1. 清空Git缓存,重新追踪文件
恢复服务器后Git缓存里还留着之前的大文件记录,必须彻底清理:
- 进入项目根目录,执行命令清空缓存:
git rm -r --cached . - 按新的.gitignore规则重新添加所有文件:
git add . - 提交这次清理操作:
git commit -m "清理缓存,应用.gitignore规则"
2. 配置适配WordPress的.gitignore
官方模板可能不够精准,直接用下面的规则覆盖你的.gitignore文件,确保日志、缓存、核心文件不被追踪:
# WordPress核心文件(不需要提交) wp-admin/ wp-includes/ wp-config.php # 日志与缓存文件 *.log wp-content/debug.log wp-content/cache/ wp-content/uploads/* !wp-content/uploads/.gitkeep # 保留uploads目录的空占位,避免被Git忽略整个目录 wp-content/advanced-cache.php wp-content/wp-cache-config.php # 第三方插件/主题(如果只提交自己开发的主题,就删掉下面两行,保留!wp-content/themes/你的自定义主题/) wp-content/plugins/ wp-content/themes/ !wp-content/themes/your-custom-theme/ # 环境配置文件 .env .local.env
3. 重新关联新仓库并推送
确认远程仓库是你新建的空仓库:
- 查看当前远程地址:
git remote -v - 如果显示旧仓库地址,先删除:
git remote remove origin - 添加新仓库地址:
git remote add origin https://github.com/你的用户名/你的新仓库名.git - 推送代码到新仓库:
git push -u origin main
额外处理:如果还有大文件残留
要是执行完上面的步骤还是报错,说明Git历史里还藏着大文件,用git filter-repo彻底清除(比旧的git filter-branch更稳定):
git filter-repo --path php_errors.log --invert-paths
清理完历史后,强制推送到远程:
git push -f origin main
内容的提问来源于stack exchange,提问作者henryC
相关产品推荐
相关产品推荐

