我最近开始使用Team Foundation Server,但是在按照我想要的方式工作时遇到了一些麻烦。
我已经使用Subversion几年了,并且喜欢它的工作方式。我总是在每个项目下设置三个文件夹,Trunk,Tags和Branches。
当我在处理项目时,我的所有代码都位于名为“C:\ dev \ projectname”的文件夹下。可以使用Subversion(使用switch命令)将此“projectname”文件夹指向trunk或任何分支或标记。
现在我正在使用TFS(我的客户端系统),我希望以同样的方式工作。我用我的项目创建了一个“Trunk”文件夹,并将“Project / Trunk / Website”映射到“c:\ dev \ Website”。
现在,我想在“tags”文件夹下找到一个版本(位于“Project / Tags / Version 1.0 / Website”中,当我执行分支命令时TFS给我以下错误:
“$ Project / tags / Version 1.0 / Website”
没有适当的映射根据我在互联网上可以找到的内容,TFS希望您在项目的根目录(我的案例中为“Project”文件夹)中映射到您的硬盘驱动器,然后拥有所有源代码。行李箱,标签和分支都被拉到你的硬盘上。这很糟糕,因为它需要你的硬盘驱动器太多的东西,更糟糕的是,当你在Visual Studio中的解决方案中工作时,你将无法下载“2.0版”并将所有项目引用到其他项目工作,因为它们都指向主文件夹下的“trunk”文件夹,而不仅仅是主文件夹本身。
我想要做的是在我的硬盘上有根“Project / Website”文件夹,并且能够让它指向(映射到)标签,分支或主干,这取决于我正在做什么,无需修复Visual Studio项目引用。
想法?
答案 0 :(得分:36)
答案 1 :(得分:1)
您可以将根文件夹映射到硬盘驱动器上的某个位置,而不是获取最新版本。然后,除了要映射的根之外,您还可以将子文件夹映射到所需的位置。执行分支时,请务必取消选中“为新分支创建本地工作副本”。
$/Project -> C:\temp
$/Project/trunk -> C:\dev\projectname
切换工作区绑定时,必须手动执行获取最新版本。对于新文件夹,然后TFS将旧文件夹更新为未下载,新文件夹更新为最新文件夹。
答案 2 :(得分:0)
您可以在命令行上更改工作区映射(比编辑器快得多,特别是在批处理文件的帮助下或三个)。
在命令行上运行“tf msdn
”以使用帮助在MSDN中打开正确的位置。您需要workfold
命令,例如“tf workfold
”(没有进一步的参数)列出了当前工作空间的文件夹映射。