我遇到了 git 问题,我不明白我应该如何让它工作
我首先想在存储库中放置一个
.gitignore
文件,以防止开发人员推送对文件的修改。
但是当文件在远程更改时,拉动它并跟踪文件,因此 .gitignore
变得毫无用处(如果我错了请告诉我)
所以我尝试了
git update-index --skip-worktree ./.vscode/settings.json
这很好用,无法提交文件。
但是,当我在远程更新它并拉取时,这会产生一个错误,要求提交我的更改
(只有这个文件被更改,并且由于我无法提交它,所以我无法拉取)
我想我不太明白它是如何工作的。
如何阻止开发人员对文件推送修改,但允许他们对其进行更改?
处理此问题的正确方法是,当开发人员对
.vscode/settings.json
1 进行“个人”更改时,这些更改不应传播到存储库之外,那么这些更改应作为 临时提交 签入。
这样,开发人员可以维护自己的本地修改(例如扩展
代码拼写检查器的
cSpell.words
条目),同时接收上游更改(例如tslint.exclude
、html.format.wrapAttributes
等)没有问题。
1 或任何其他文件。