我想保留特定文件夹,但不要从 git 存储库下载

I want to preserve the specific folders, but don't download from git repo

我有一些文件夹是开发者第一次搭建开发环境时下载的,不需要重新下载。如何设置此文件夹以满足 Git 中的此要求?

①开发者第一次命令"git clone ",需要下载文件夹

② 他们在搭建开发环境的时候,文件夹怎么改都得忽略。

文件夹里的文件太多了。每当我使用命令 git commit/push 时,都会发生很多冲突。

为了确保我了解情况,让我举一个具体的例子。假设该项目有一个包含图像的文件夹。 project/img/ 用户可以将自己的图像添加到该文件夹​​,并且可以更改现有图像。你不希望用户对图片的增改推送。

与 Git 一起工作变得丑陋。一种方法是使用 git update-index --assume-unchanged project/img/* 告诉 Git 应该忽略对单个文件的更改,但不能对目录执行此操作。它必须由每个用户完成。每次向该文件夹添加新文件时都必须重新执行此操作。

更好的选择是将文件夹添加到 .gitignore。当需要对该文件夹中的文件进行更改时,可以使用 git add -f 强制添加它们。这对开发人员来说很容易出错,但至少对用户来说不是问题。

最好的解决办法是使用两个不同的文件夹。一个用于项目附带的默认图像。另一个用于来自用户的任何额外或替换图像。将该用户图片文件夹添加到您的 .gitignore 文件中。这最适合 Git 的工作方式。这也让用户可以告诉他们添加和更改了哪些图像,以及项目附带的图像,并且他们可以安全地控制整个文件夹。