我有一个已经初始化的Git存储库,我添加了一个.gitignore文件。我如何刷新文件索引,以便忽略我想要忽略的文件?
当前回答
要从跟踪中删除几个特定文件,请执行以下操作:
git update-index --assume-unchanged path/to/file
如果您想再次开始跟踪它:
git update-index --no-assume-unchanged path/to/file
其他回答
对于像我这样的迟钝的人,还有一个建议:)将.gitignore文件放到存储库根目录中,而不是放到.git文件夹中。干杯
要取消跟踪已添加/初始化到存储库的文件,即停止跟踪该文件,但不从系统中删除它,请使用:gitrm--缓存文件名
复杂的答案无处不在!
只需使用以下内容
git rm -r --cached .
它将从源文件中删除您试图忽略的文件,而不是从计算机上的主文件中删除!
之后,只需提交并推送!
如果文件已经在版本控制中,则需要手动删除它们。
这里没有提到的另一个问题是,如果你已经在Windows记事本中创建了.gitignore,我发现它在其他平台上看起来像是胡言乱语。关键是确保在记事本中将编码设置为ANSI(或者像我一样在linux上创建文件)。
根据我的回答:https://stackoverflow.com/a/11451916/406592
推荐文章
- 为什么我需要显式地推一个新分支?
- 如何撤消最后的git添加?
- Rubymine:如何让Git忽略Rubymine创建的.idea文件
- Gitignore二进制文件,没有扩展名
- Git隐藏错误:Git隐藏弹出并最终与合并冲突
- 了解Git和GitHub的基础知识
- 没有。Git目录的Git克隆
- Git与Mercurial仓库的互操作性
- 忽略git中修改(但未提交)的文件?
- “git restore”命令是什么?“git restore”和“git reset”之间有什么区别?
- Git合并与强制覆盖
- Git拉另一个分支
- 在Bash命令提示符上添加git分支
- 如何更改Git日志日期格式
- git pull -rebase和git pull -ff-only之间的区别