我通常使用VS GUI进行TFS,从未遇到任何问题。
我正在尝试让命令行工作,并从集合的映射目录的根目录运行TF。
当我运行TF Get <project name> /noprompt / recursive
我收到错误消息:
无法确定工作区。您可以通过运行'tf workspaces / collection:TeamProjectCollectionUrl'来纠正此问题。
我已经运行了这个,但错误仍然存在。
当我运行TF工作区时,我有一个我正在使用的计算机的条目(TFS源位于不同的PC上)和收集路径http://<comp name:port>/TFS/<project>
这是正确的。
还有其他人遇到过这种情况吗?我发现谈论它的各个页面似乎在运行tf workspaces
命令后停止。这总是适用于其他人吗?也许我只是错误地使用它?
答案 0 :(得分:13)
您收到此消息是因为TF get正在您的工作区目录CD之外运行到包含您需要首先使用的工作区的目录。
答案 1 :(得分:3)
命令行不是要求TFS服务器uri,而是要求ProjectCollection uri,所以你需要添加一些额外的信息:
{https}://{tfsserver}:{port}/tfs/{collection}
替换:
带有tfs服务器主机名的
{https}
确保使用正确的协议,http或https。带有端口号的
{tfsserver}
带有项目集合名称的
{port}
(默认值为8080
或443
)
{collection}
(安装默认值为:DefaultCollection
)
ProjectCollection与项目不同,因此请确保输入正确的值。找到集合名称最简单的地方是打开Visual Studio,然后打开Source Control Explorer。项目集合的Uri应该是根节点。您可能正在输入项目名称,而不是ProjectCollection名称。
如果你在一个映射到TFS的文件夹中,那么tf get
应该自己计算CollectionUri。
如果并排安装了Visual Studio 2010和2012或2013,请确保使用正确版本的Visual Studio中的Developer Command Prompt。随着本地工作区的出现,2010命令行可能无法找到2012或2013命令行所在的映射。
答案 2 :(得分:0)
我通过使用&#34; Visual Studio命令提示符&#34;运行tf来修复此问题。 (也称为开发人员命令提示符),而不是运行操作系统附带的默认命令提示符。
您可以在Windows 7的&#34;开始 - &gt;下找到它。所有程序 - &gt; Microsoft Visual Studio - &gt; Visual Studio工具 - &gt; Visual Studio命令提示符&#34;。
,找到更多文档,包括其他Windows版本的说明答案 3 :(得分:0)
我解决了这个问题:
private ClassUnderTest classUnderTest;
private Collaborator mock;
@Test
public void test12() {
mock = mock(Collaborator.class);
replay(mock);
classUnderTest.setCollaborator(mock);
classUnderTest = new ClassUnderTest(1, 2);
Integer result = classUnderTest.work(3, 4);
// Assertions
}