You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

哪些文件不可推送到GitHub公开仓库?各平台目录安全性咨询

公开GitHub仓库不宜推送的文件及平台目录安全指南

一、绝对不能推的文件类型

  • 敏感配置类文件:任何包含API密钥、数据库密码、OAuth令牌、支付密钥的文件都绝对不能推,比如.env、Android的local.properties、iOS带敏感值的Info.plist、硬编码密钥的config.json。这些文件一旦公开,你的账号、服务很可能被恶意滥用。
  • 本地缓存与日志文件:像Android的.gradle、iOS的DerivedData、node_modules、__pycache__这类本地缓存,还有*.log日志文件,不仅占空间没复用价值,还可能泄露本地路径、调试信息等隐私内容。
  • 编译产物与二进制文件:Android的apk/aab、iOS的ipa、Windows的.exe/.dll、Linux的可执行文件都没必要推——别人可以通过源码重新编译,而且这些文件体积大,会拖累仓库加载速度。
  • 个人隐私文件:本地的文档、照片、IDE的个人专属配置(比如.idea里的用户特定设置、VSCode的.vscode/settings.json带个人路径的),别不小心混进仓库里。
  • 版权受限文件:付费字体、付费素材、受版权保护的内容绝对不能公开推送,否则会引发法律纠纷。

二、各平台目录的推送安全性

Android相关目录

  • 可放心推送:app/(核心源码、通用build.gradle,注意别硬编码敏感值)、gradle/(通用构建脚本)、settings.gradle、项目说明文档(比如README.md)。
  • 禁止推送:.gradle/(本地缓存)、local.properties(含SDK路径、密钥)、app/build/(编译产物)、所有*.apk/*.aab文件。

iOS相关目录

  • 可放心推送:YourProject.xcodeproj/(项目配置,避开本地签名相关的私人配置)、YourProject/(源码文件)、Podfile/Podfile.lock(CocoaPods依赖配置,确保无敏感依赖)、项目说明文档。
  • 禁止推送:DerivedData/(Xcode本地缓存)、build/(编译产物)、*.ipa文件,还有带敏感配置的Info.plist——建议把敏感值改成环境变量,别硬编码在文件里。

Linux相关目录

  • 可放心推送:源码目录(比如src/)、Makefile/CMakeLists.txt构建脚本、项目说明文档、.gitignore。
  • 禁止推送:build/(编译后的二进制文件)、.local/(用户本地缓存)、*.log运行日志,还有系统级的敏感配置文件(比如本地/etc/下的自定义配置)。

Windows相关目录

  • 可放心推送:*.sln/*.csproj项目配置文件(确保无硬编码敏感值)、源码目录、项目说明文档。
  • 禁止推送:bin//obj/(编译产物)、*.exe/*.dll二进制文件、.vs/(VS本地缓存目录)、AppData相关的本地配置文件。

三、通用安全建议

  • 一定要用.gitignore文件,GitHub上有各平台的现成模板,直接套用就能自动过滤不该推的文件。
  • 推送前务必检查所有配置文件,把硬编码的敏感信息换成环境变量或者加密配置。
  • 如果不小心推了敏感文件,立刻用git filter-repo工具清除仓库历史中的相关记录,同时马上重置泄露的密钥/令牌,避免损失。

内容的提问来源于stack exchange,提问作者shravan2006

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 11:27:27