git上为啥删除不掉文件夹
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git上为啥删除不掉文件夹相关的知识,希望对你有一定的参考价值。
参考技术A git上删除不掉文件夹是因为git的存储方式。根据查询相关信息显示,git仓库下有一个名为git的隐藏文件夹,从git初始化开始,所有仓库的变化都会记录在这个文件夹中,只要是git记录的文件,就会通过一定的算法保存到这里,删除一个文件,只是记录了删除这个操作,但并不会把git文件夹删除,要想彻底删除git已经记录的文件夹,就必须用到一个高端命令gitfilterbranch。为啥 Git 在部署后会覆盖服务器上的文件?
【中文标题】为啥 Git 在部署后会覆盖服务器上的文件?【英文标题】:Why is Git overwriting files on server after deploying?为什么 Git 在部署后会覆盖服务器上的文件? 【发布时间】:2011-11-09 11:16:35 【问题描述】:我在 heroku 上有一个 node.js 应用程序,它将图像保存在 public/productimages 文件夹中。但是每次我推送我的新代码时,所有以前的图像都会被删除。我在 .gitignore 文件中添加了 productimages 但没有用。我本地计算机中的 public/productimages 是空的。
【问题讨论】:
你为什么要推?在这种情况下不是更好吗? 怀疑他根本不是 Git 意义上的“推动”,而是使用 Heroku 的 gem 进行部署 运行git status时,是否显示图片在排队等待删除? 评论者,这是 Heroku。这不是 Git 问题。使用git push heroku master
将应用程序简单地部署到 Heroku。
@meagar heroku
gem 未部署。使用git push
将应用程序部署到heroku。 Heroku 运行带有 post-receive 挂钩的分布式 git
服务器,以将应用程序部署到 Heroku 网格上的多个服务器。
【参考方案1】:
云计算的基本前提:存储不是持久的,除非明确规定。
未使用 Heroku,但我相信如果您的文件没有版本控制并且无法从您的存储库中获取,则不会保留它们。
【讨论】:
【参考方案2】:您不能使用文件系统在 Heroku 上进行永久存储。
原因是 Heroku 每次启动您的应用程序时,都会在一个全新的临时目录中启动它。每次 Heroku 关闭您的应用程序时,它都会删除您的应用程序之前运行的临时目录。Heroku 每晚都会这样做,每次您git push
,每次您更改配置变量时,每次您更改插件时,每次您增加或减少测功机数量等的时间。
您必须使用外部服务(例如 PostgreSQL 数据库或 S3)来存储您可能想要存储的任何内容。
【讨论】:
以上是关于git上为啥删除不掉文件夹的主要内容,如果未能解决你的问题,请参考以下文章