在添加到 .gitignore 时将现有文件保留在 repo 中
Keep existing file in repo while being added to .gitignore
目前,我们在 repo 上有一些项目 属性 文件,我愿意将它们添加到 .gitignore 中,这样即使我们在本地更改它们,它们从现在起也会被忽略.
我已经试过了:
git rm <file> --cached
将该文件添加到 .gitignore,然后添加 git add -f <file>
,以便将其上传到存储库,但这只会破坏 gitignore 以及对该文件即将发生的更改将被 git 跟踪,这是我试图避免的事情。
所以,总结一下:
-一个文件当前在 repo 上。
-我想把它保存在回购协议中。
- 从现在开始不得更改该文件,同时仍在回购协议中,因此我将其添加到 git 忽略。
-Git 不得跟踪该文件的更改。
提前致谢。
如果我理解正确的话,你可以通过
git update-index --assume-unchanged <file>
.
你可以撤销设置
git update-index --no-assume-unchanged <file>
.
这将忽略该文件的所有未来修改(本地),而文件本身仍在 git 存储库中。请注意,这种影响只是局部的。因此,如果其他人克隆您的存储库,此文件将照常运行。
更多信息:https://git-scm.com/docs/git-update-index#git-update-index---no-assume-unchanged
目前,我们在 repo 上有一些项目 属性 文件,我愿意将它们添加到 .gitignore 中,这样即使我们在本地更改它们,它们从现在起也会被忽略.
我已经试过了:
git rm <file> --cached
将该文件添加到 .gitignore,然后添加 git add -f <file>
,以便将其上传到存储库,但这只会破坏 gitignore 以及对该文件即将发生的更改将被 git 跟踪,这是我试图避免的事情。
所以,总结一下:
-一个文件当前在 repo 上。 -我想把它保存在回购协议中。 - 从现在开始不得更改该文件,同时仍在回购协议中,因此我将其添加到 git 忽略。 -Git 不得跟踪该文件的更改。
提前致谢。
如果我理解正确的话,你可以通过
git update-index --assume-unchanged <file>
.
你可以撤销设置
git update-index --no-assume-unchanged <file>
.
这将忽略该文件的所有未来修改(本地),而文件本身仍在 git 存储库中。请注意,这种影响只是局部的。因此,如果其他人克隆您的存储库,此文件将照常运行。
更多信息:https://git-scm.com/docs/git-update-index#git-update-index---no-assume-unchanged