能否在TFVC项目中添加本地.git文件夹并仍在Visual Studio中使用TFVC?
解决Visual Studio识别Git而非TFVC的问题
核心思路
Visual Studio会优先扫描项目目录下的.git文件夹来切换源代码管理,所以我们可以让Git使用非默认的隐藏目录,避开VS的自动检测,同时保留本地Git功能和VS的TFVC集成。
具体操作步骤
初始化自定义Git目录
不用默认的git init,执行以下命令创建独立的Git存储目录:git init --separate-git-dir=.git-local执行后项目目录会生成一个
.git文本文件(指向实际Git数据目录.git-local),同时创建.git-local文件夹存储Git版本数据。日常Git操作的简化方式
- 临时环境变量法:在Git Bash中执行以下命令,之后直接用常规Git命令即可:
export GIT_DIR=.git-local git add . git commit -m "提交说明" - 脚本快捷法:在项目目录创建
git-local.sh脚本,内容如下,每次运行脚本后就能直接使用Git命令:#!/bin/bash export GIT_DIR=.git-local exec bash - 手动指定参数:每次执行Git命令时加上目录参数,适合临时操作:
git --git-dir=.git-local add . git --git-dir=.git-local commit -m "提交说明"
- 临时环境变量法:在Git Bash中执行以下命令,之后直接用常规Git命令即可:
恢复VS的TFVC识别
完成上述操作后,项目目录没有默认的.git文件夹,Visual Studio会继续以TFVC作为源代码管理工具,你可以正常使用源代码管理资源管理器。
补充说明
- 若已创建默认
.git文件夹:直接将其重命名为.git-local,然后在项目目录新建.git文本文件,写入内容gitdir: .git-local即可。 .tfignore无法阻止VS识别Git目录,因为VS的源代码管理检测是直接扫描目录结构,不依赖TFVC的忽略规则。
内容的提问来源于stack exchange,提问作者tomwaitforitmy
相关产品推荐
相关产品推荐

