如何解决VS2022使用TFS签入文件时提示TF10122错误的问题
TF10122报错问题解决方案
这个报错是早期VS22版本的TFVC(Team Foundation Version Control)组件已知的逻辑bug,签入扫描逻辑会误将本地工作区的$tf缓存文件夹识别为待签入的用户文件,而$是TFS服务器路径的保留前缀,因此触发路径合法性校验报错,实际业务文件已经正常签入,仅为前端提示异常。可按以下优先级尝试修复:
- 添加.tfignore规则过滤缓存文件夹
在本地工作区的根目录新建/编辑.tfignore文件,添加一行规则:
保存后重启VS22,TFS会完全忽略该本地缓存文件夹,不会再尝试将其纳入签入扫描范围。$tf/ - 修正源代码管理插件配置
打开VS22顶部菜单栏工具->选项->源代码管理->插件选择,确认当前选中的插件为Team Foundation Version Control,如果此前处于混合模式或误选Git插件,切换后重启VS即可生效。 - 重建本地工作区缓存
关闭所有VS进程后,手动删除本地工作区根目录的$tf文件夹,重新打开VS22并重新映射TFS项目到本地路径,VS会自动生成合规的新缓存文件夹,消除异常扫描逻辑。 - 升级VS22到最新稳定版
该bug在VS22 17.3及之后的稳定版本已经官方修复,如果当前使用的是更早的VS22版本,直接升级到最新版即可从根源解决该问题。
该问题仅出现在VS22的原因是早期VS22重写了TFVC的本地扫描逻辑,加入了多余的路径校验规则,VS19的旧版本扫描逻辑不会处理本地缓存文件夹,因此无异常。
内容的提问来源于stack exchange,提问作者Greg Gum
相关产品推荐
相关产品推荐

