我有一些文件夹,供开发人员在第一次设置开发环境时下载,而不必重新下载。如何在Git中设置此文件夹以满足此要求?
①第一次开发人员命令“git clone”时,必须下载该文件夹。
②在设置开发环境时,必须忽略该文件夹,但它们会发生变化。
文件夹中有这么多文件。每当我使用命令git commit / push时,就会发生很多冲突。
答案 0 :(得分:1)
为了确保我理解这种情况,让我用一个具体的例子。假设项目有一个包含图像的文件夹。 project/img/
用户可以将自己的图像添加到该文件夹,他们可以更改现有图像。您不希望用户添加和更改图像。
使用Git进行工作变得很难看。一种方法是使用git update-index --assume-unchanged project/img/*
告诉Git应忽略对单个文件的更改,但不能对目录进行更改。它必须由每个用户完成。每次将新文件添加到该文件夹时,都必须再次执行此操作。
更好的选择是将文件夹添加到.gitignore
。当需要对该文件夹中的文件进行更改时,git add -f
可用于强制添加。这对开发人员来说很容易出错,但至少对用户来说不是问题。
最佳解决方案是使用两个不同的文件夹。一个用于项目附带的默认图像。另一个用于来自用户的任何额外或替换图像。将该用户图像文件夹添加到.gitignore
文件中。这与Git的工作原理相得益彰。这也让用户可以告诉他们添加和更改了哪些图像,而不是项目附带的图像,他们可以安全地控制整个文件夹。