推送至远程分支的新文件拉取后未显示在解决方案资源管理器中
Git忽略规则拦截
检查本地.gitignore文件,看有没有匹配该文件的忽略规则。用命令git check-ignore -v 你的文件名验证,有输出就说明文件被规则命中了。另外别忘了检查全局忽略配置:执行git config --get core.excludesfile找到全局忽略文件的路径,打开看看是否包含相关规则。开启了稀疏检出(Sparse Checkout)
Git的稀疏检出会只拉取仓库里指定路径的文件。执行git config --get core.sparseCheckout,如果返回true,说明开启了该功能。打开.git/info/sparse-checkout文件,查看里面的路径规则,确认是否包含你要的文件路径。Windows系统大小写冲突
Windows默认不区分文件名大小写,如果你在第一台电脑提交的文件名是Demo.md,第二台电脑本地可能存在demo.md,或者Git的大小写配置导致文件没正确显示。执行git config core.ignorecase,如果是true,可以尝试临时改成false(操作前备份本地文件),然后重新拉取试试。符号链接无法解析
如果提交的是符号链接,Windows系统默认可能不支持解析这类文件,导致资源管理器里看不到实际内容。用git ls-tree HEAD 你的文件名查看文件模式,要是显示120000就说明是符号链接,需要手动创建对应的实际文件或者开启Windows的符号链接支持。IDE缓存未刷新
解决方案资源管理器(比如Visual Studio的)可能存在缓存,没同步Git的变更。试试重启IDE,或者右键解决方案选择"刷新",强制刷新文件列表。
内容的提问来源于stack exchange,提问作者tothemax

