我想将文件的初始版本提交给Git,然后禁止对该文件进行修改。那怎么办? 我试过了: -在初始推送后将文件添加到.gitignore(但这不会起作用,因为已经跟踪了文件)。 -git rm -rf --cached,但是下次提交时会从存储库中删除文件。
答案 0 :(得分:1)
如果您正在考虑使用.gitignore,那么我假设您可以为此配置每个本地存储库。如果是这样,您可以使用git update-index --skip-worktree path/to/file
。这样可以防止提交和/或跟踪对文件的更改。
答案 1 :(得分:1)
我在编程时遇到了同样的问题。我的项目有一个名为setting.cfg
的文件。但是我的同事应该为自己的环境做些改变。我们希望共享setting.cfg
文件并在不推送到远程存储库的情况下对其进行更改。
最后,我们创建了一个名为setting.cfg_bak
的文件,并忽略了setting.cfg
:
git rm setting.cfg
echo "setting.cfg" >> .gitignore`
如果要使用该文件,应将setting.cfg_bak
复制到setting.cfg
,并根据自己的需要修改setting.cfg
。之后,修改将不会被推送到远程存储库。