git - 如果我添加这个目录,git add 会做什么?
问题描述
现在出现过几次的情况:
我有一个充满文件的目录foo/
,尚未添加到版本控制中。git status
同意是这样的。我正要输入git add foo
,但是等等,那里有一些不应该添加到版本控制中的二进制文件。希望它们成功地被.gitignore
d,但我不确定,而且我不想在事后发现,因为在添加后必须从版本控制中删除它们是一件令人讨厌的事情。
有没有办法我可以问 git '如果我要告诉你添加foo/
,你会在其中添加哪些特定文件?
解决方案
在添加文件之前执行此操作:
git status -uall
或者如果您喜欢更详细的拼写:
git status --untracked-files=all
这将列出 Git 视为未跟踪的所有文件,减去任何未跟踪但通过.gitignore
. 将任何缺少的名称或模式添加到适当的位置.gitignore
(foo/.gitignore
如果需要/需要,首先创建)。
添加文件后,如果现在跟踪一些不应该跟踪的文件,它们将显示为git status
. git rm --cached
在每个这样的文件上使用1并将适当的名称或文件名模式添加到适当的位置.gitignore
,以便未来git add foo
可以做正确的事情。
1您也可以git reset
在每个此类文件上使用,如Nizar 的回答。
推荐阅读
- php - PHPSpreadsheet:为时间格式化单元格还包括日期
- r - ggplot中颜色美学的多个变量问题
- java - 如何将 Activity.class (this) 传递给方法?(安卓)
- ios - 视图的框架是否总是在调用 draw(_:) 时设置?
- jekyll - 如果项目特定数据不可用,Jekyll 中继承默认数据的惯用方式
- java - 修改 ArrayList 的元素
- python - 使用pyodbc python的零星SQL查询时间
- javascript - 如何配置 ES-Lint 以要求大括号间距专门用于解构
- arrays - 在vba中随机播放数组
- firebase - Flutter中的Firebase身份验证问题