如何在Heroku服务器推送文件时排除指定文件?
如何在Heroku推送时排除指定文件?
当然可行!这在Heroku部署里是很常见的需求,毕竟有时候我们不想把某些配置或本地文件推送到服务器上。下面分两种场景给你具体操作步骤:
场景1:目标文件还没被提交到Git仓库
如果你的Prefix.js从来没被Git追踪过(也就是没提交到仓库里),操作很简单:
- 在项目根目录找到或新建
.gitignore文件,在里面添加一行:Prefix.js - 保存文件后,正常执行Git提交和推送命令:
git add . git commit -m "Update code, exclude Prefix.js" git push heroku main
这样Git就会自动忽略Prefix.js,推送时不会把它传到Heroku服务器上。
场景2:目标文件已经被提交到Git仓库
如果Prefix.js之前已经被提交过,那光加.gitignore没用,得先让Git停止追踪它:
- 先执行命令移除Git对该文件的追踪(不会删除你本地的文件):
git rm --cached Prefix.js - 接着在
.gitignore里添加Prefix.js,确保以后不会再被追踪 - 提交这个更改:
git add .gitignore git commit -m "Stop tracking Prefix.js and exclude from pushes" - 最后推送到Heroku:
git push heroku main
执行完后,Heroku服务器上的Prefix.js会被移除,之后的推送也不会再包含这个文件了。
临时排除(非永久)
如果只是某一次推送不想包含Prefix.js,不想修改.gitignore的话,可以这样操作:
- 先添加所有文件到暂存区:
git add . - 然后移除
Prefix.js的暂存状态:git reset HEAD Prefix.js - 接着提交并推送,这次推送就不会包含该文件了。不过下次如果执行
git add .还是会把它加进去,适合临时需求。
内容的提问来源于stack exchange,提问作者ironferrero
相关产品推荐
相关产品推荐

