TFS 2015中多控制台应用引用共享项目的本地配置问询
嘿,针对你在TFS 2015里管理大量依赖共享库的控制台应用的场景,我给你整理了几个关键配置步骤,确保所有应用能正常构建和运行:
1. 对齐本地映射与TFS分支结构
因为你是直接引用sharedlib项目而非编译后的DLL,本地工作区的目录结构必须和TFS分支完全匹配,不然Visual Studio找不到引用的项目。
- 检查本地映射的根目录是否对应TFS里的
branchname节点,确保本地有scripts、sharedlib、applications这三个一级子目录 - 确认每个应用(比如application1、application2)的解决方案文件,和
sharedlib的相对路径和TFS里的结构完全一致,别出现本地目录层级错乱的情况
2. 配置项目引用为相对路径
绝对路径会导致其他团队成员拉取代码后引用失效,所以必须把项目引用改成相对路径:
- 打开任意应用的解决方案,右键点击引用的
sharedlib项目 → 选择「属性」 - 查看「项目文件路径」,确保是类似
..\..\sharedlib\SharedLibProject.csproj这样的相对路径(具体层级根据你的目录结构调整) - 如果发现是绝对路径,直接编辑应用的
.csproj文件,修改<ProjectReference>节点的Include属性,比如:<ProjectReference Include="..\..\sharedlib\SharedLibProject.csproj"> <Project>{xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}</Project> <Name>SharedLibProject</Name> </ProjectReference>
3. 调整解决方案的构建顺序
应用依赖sharedlib,必须保证构建时先编译共享库,再编译应用:
- 在Visual Studio里打开解决方案,右键点击解决方案 → 选择「项目依赖项」
- 在「依赖项」标签页,为每个应用勾选它所依赖的
sharedlib项目 - 切换到「构建顺序」标签页,确认
sharedlib排在所有依赖它的应用前面
4. 处理共享库的自定义需求
既然有些团队需要自定义sharedlib,可以通过TFS分支策略来管理,避免冲突:
- 如果某个团队要修改共享库,让他们从主分支的
sharedlib创建一个特性分支,在分支里做自定义修改 - 应用团队在自己的应用分支里,调整本地映射或者修改项目引用路径,指向团队自定义的
sharedlib分支 - 建议给TFS主分支的
sharedlib设置权限,只有维护团队能修改,防止意外破坏通用版本
5. 配置TFS自动化构建(可选)
如果要设置CI/CD构建,在TFS 2015的构建定义里需要注意这些点:
- 在「存储库」标签页,确保构建工作区映射包含
sharedlib和对应的applications目录 - 在「构建步骤」里,选择「Visual Studio构建」任务,要么指定包含所有应用和
sharedlib的解决方案,要么依次构建sharedlib再构建各个应用 - 确保构建代理的工作区目录结构和本地一致,避免路径问题导致构建失败
内容的提问来源于stack exchange,提问作者Ash K
相关产品推荐
相关产品推荐

