首页 > 解决方案 > 推送到 git 存储库时如何不覆盖特定目录中的更改?

问题描述

只是我有一个 git 存储库。然后直接在服务器上我刚刚创建的images目录是这样的:

在此处输入图像描述

现在我从本地存储库(没有images目录)推送更改,然后images消失。为什么?

问题是:

怎么做才能告诉 git 不要对images目录做任何事情?

标签: git

解决方案


Git 不推送文件,Git 推送提交。(提交包含文件:每个提交都有所有文件的完整快照。)获得新提交的服务器必须决定如何部署这些新提交。那部分取决于服务器,而不是取决于您执行git push.

...然后直接在我刚刚创建的images目录的服务器上...

如果-<strong>如果-服务器通过完全删除先前的部署然后完全安装新的提交来部署新的提交,那么您的images目录将被完全删除,并且什么都没有替换。

如果服务器以其他方式部署新的提交,则images您直接在服务器上创建的目录会发生其他情况。

这不是 Git 的功能,它不是部署系统。这是控制服务器上接收 Git 的任何人的功能,服务器进行编程以在接收新提交时执行。找出那个“某人”是谁;找出他们做了什么;找出你应该做什么更新它以按照你想要的方式运行。


推荐阅读