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上为啥删除不掉文件夹的主要内容,如果未能解决你的问题,请参考以下文章

苹果电脑出现 .DS_Store文件,删除不掉怎么处理?

file.delete()为啥删除不掉文件夹中的文件,确定不是数据流没有关闭的问题,也可以手动删除,非权限问题

Git - 为啥在已删除文件上运行命令时需要双破折号?

「git」如何删除github上的文件但保留在本地

文件移除 git 版本库但不删除文件

为啥 git stash 删除我的 node_modules 文件夹?