我的git中有一个文件:
dir1/.thisfile
.thisfile
的内容是"您好"
现在我希望当用户执行git clone
他们拥有此文件时。
之后,我希望用户删除文件或在本地编辑文件的内容,但我希望git忽略它。
我如何实现这一目标? 我把文件放在我的.gitignore中,但是当我删除它或更改它时它就被暂存了。 Gitignore似乎只适用于我的gitrepo中没有的文件。
答案 0 :(得分:0)
我不完全确定我完全理解你,但是如果你想暂时隐藏文件,使其不被包含在提交中,你可以使用:
git update-index --assume-unchanged <file>
...并在需要时将其更改回来:
git update-index --no-assume-unchanged <file>
希望这有帮助。
答案 1 :(得分:0)
如果您的文件是repo,则无论.gitigore
中是否提及该文件。克隆存储库的每个用户都将获取该文件,但由于它列在.gitigore
上,因此除非它们被.gitigore
删除,否则他们无法再次提交该文件。
然后将文件上传到repo并将其添加到.gitigore
。如果您想跟踪本地文件check这个问题。
答案 2 :(得分:0)
一般来说,如果您希望全局忽略这些文件,必须将它们添加到全局repo git.ignore 。我没有看到任何内置的实现您的要求的方法,但您可以使用以下方法来实现。
在将文件dir1 / .thisfile推送到您的仓库之前,将名称更改为例如
DIR1 / .thisfile.model
或
DIR1 / .thisfile.example
或任何你喜欢的东西,只要它是不同的和有意义的。
推送文件,然后将原始文件名(dir1 / .thisfile)添加到全局git.ignore 。现在,用户将始终拉出该文件,但显然会标记出一个出色的名称。如果他们想制作&#34;生产&#34;使用它(无论是什么),他们需要在本地将名称更改为原始名称。如果他们这样做,不用担心,它已经被忽略了。