我想保留特定的文件夹,但不要从git repo下载

时间:2015-03-16 00:31:58

标签: git github

我有一些文件夹,供开发人员在第一次设置开发环境时下载,而不必重新下载。如何在Git中设置此文件夹以满足此要求?

①第一次开发人员命令“git clone”时,必须下载该文件夹。

②在设置开发环境时,必须忽略该文件夹,但它们会发生变化。

文件夹中有这么多文件。每当我使用命令git commit / push时,就会发生很多冲突。

1 个答案:

答案 0 :(得分:1)

为了确保我理解这种情况,让我用一个具体的例子。假设项目有一个包含图像的文件夹。 project/img/用户可以将自己的图像添加到该文件夹​​,他们可以更改现有图像。您不希望用户添加和更改图像。

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

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

最佳解决方案是使用两个不同的文件夹。一个用于项目附带的默认图像。另一个用于来自用户的任何额外或替换图像。将该用户图像文件夹添加到.gitignore文件中。这与Git的工作原理相得益彰。这也让用户可以告诉他们添加和更改了哪些图像,而不是项目附带的图像,他们可以安全地控制整个文件夹。