You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何让Git自动检测Visual Studio 2017项目中新增的文件?

解决Git无法自动识别VS2017中新增.NET Core文件的问题

我之前在跨环境开发(尤其是虚拟机+共享文件夹的组合)里也踩过一模一样的坑,Git死活不认新增的文件,每次手动添加真的烦死人。给你几个亲测有效的解决思路:

  • 先排查.gitignore的锅
    打开解决方案根目录下的.gitignore文件,仔细看看有没有不合理的规则——比如是不是误写了*.cs、或者把项目子文件夹给排除了?要是发现某个路径被误忽略,直接在规则前加!来取消排除,比如!MyProject/Features/新添加的文件夹/。另外,VS自动生成的.gitignore有时候会对共享文件夹路径兼容不好,必要的话可以手动调整下针对.NET Core的规则。

  • 强制刷新Git索引
    虚拟机的文件系统和Git的索引经常不同步,试试用命令行(VS里的Package Manager Console或者Git Bash都行)进入项目根目录,跑这几个命令:

    # 先尝试重新添加所有文件
    git add .
    

    要是还不行,就强制刷新索引:

    git update-index --really-refresh
    

    再狠一点就清除缓存重新追踪(放心,只要.gitignore没问题,不会把不该加的文件加进来):

    git rm -r --cached .
    git add .
    git commit -m "修复Git索引,重新追踪所有文件"
    
  • 解决虚拟机共享文件夹的兼容性问题
    你用的是Parallels共享文件夹,这种跨系统的文件共享经常会让Git的文件监控失效。试试把整个解决方案复制到Windows虚拟机的本地磁盘(比如C盘),看看新增文件能不能被正常识别——如果可以,那就是共享文件夹的锅。
    不想搬文件的话,可以关掉Git的文件系统监控,让它主动扫描文件:

    git config core.fsmonitor false
    

    这个设置会让Git每次都扫一遍所有文件,速度慢一点,但在共享文件夹环境下绝对靠谱。

  • 调整VS2017的源代码管理设置
    打开VS的工具选项源代码管理Git全局设置,确认Git的路径是指向你自己安装的完整版Git,而不是VS自带的精简版(我之前就是因为用了VS自带的Git才出问题)。另外,直接右键解决方案选Git提交,在提交界面里看看能不能找到那些被忽略的文件,批量添加比一个个右键方便多了。

内容的提问来源于stack exchange,提问作者reckface

火山引擎 最新活动