git: 查看未跟踪文件
一,实际的未跟踪文件可能和.gitignore不一致,
此时我们用这个命令列出未跟踪的文件:
git status --ignored
例子:
$ git status --ignored
位于分支 devel
忽略的文件:
(使用 "git add -f <文件>..." 以包含要提交的内容)
.env
.idea/
composer.lock
extend/Youmeng/.DS_Store
extend/Youmeng/Push/
public/layui.bak/.DS_Store
public/layui.bak/css/.DS_Store
public/layui/.DS_Store
runtime/log/
runtime/session/
runtime/temp/
vendor/composer/pcre/
vendor/maennchen/
vendor/markbaker/
vendor/phpoffice/
查看实际的.gitignore
$ more .gitignore
*.log
.env
composer.phar
composer.lock
.DS_Store
Thumbs.db
/.idea
/.vscode
/.settings
/.buildpath
/.project
可以看到两者的不一致
二,出现这种情况的原因:
修改.gitignore后没有更新缓存,
正确做法
一、清空缓存
git rm -rf --cached .
二、重新添加文件至缓存区
git add .
三、验证效果
git status
三,把未跟踪文件加入到代码库
如果是.gitignore中忽略的,需要加-f参数
$ git add -f vendor/phpoffice/
否则会报错:
$ git add vendor/phpoffice/
下列路径根据您的一个 .gitignore 文件而被忽略:
vendor/phpoffice
提示:如果您确实要添加它们,使用 -f 参数。
提示:运行下面的命令来关闭本消息
提示:"git config advice.addIgnoredFile false"
再查看可以看到文件已添加到了缓存区:
$ git status
位于分支 devel
要提交的变更:
(使用 "git restore --staged <文件>..." 以取消暂存)
新文件: vendor/phpoffice/phpspreadsheet/CHANGELOG.md
新文件: vendor/phpoffice/phpspreadsheet/CONTRIBUTING.md
...