我无法使用Team Explorer Everywhere命令行客户端(TEE-CLC-10.0.0)创建工作区并从Team Foundation Server下载文件.我已经创建了工作区:
$ ../tfs/TEE-CLC-10.0.0/tf -login:secretUsername,secretPassword -server:http://secretHost:8080 workspace -new KOLOBI
Workspace 'KOLOBI2' created.
Run Code Online (Sandbox Code Playgroud)
然后我想从服务器下载文件到我的工作区:
$ ../tfs/TEE-CLC-10.0.0/tf -login:secretUsername,secretPassword -server:http://secretHost:8080 get -recursive -all -force .
An argument error occurred: Items must reside in a workspace that has been previously used on this computer.
Run Code Online (Sandbox Code Playgroud)
我想我错过了一个步骤,即将本地目录添加到工作区或类似的东西.但我无法弄清楚如何能够下载文件.
我想了解如何解决以下情况.
我有一个TFS 2012服务器有三个集合,比如说;
- http://tfs2012:8080/tfs/DefaultCollection/
- http://tfs2012:8080/tfs/CollectionOne/
- http://tfs2012:8080/tfs/CollectionTwo/
Run Code Online (Sandbox Code Playgroud)
在CollectionOne和CollectionTwo中,我有一个同名的工作区,我们称之为"TestWorkspace".
当我在CollectionOne上为该工作区运行map命令时,它可以完美地工作(可以获取,删除,更新等).问题出现在我尝试取消映射工作区时,因为我使用它(想想构建机器),以下调用失败.
tf.exe workfold /unmap /workspace:TestWorkspace E:\Temp
Run Code Online (Sandbox Code Playgroud)
它失败了;
Multiple workspaces exist with the name TestWorkspace.
Please specify the Team Foundation Server or qualify the name with the owner.
Run Code Online (Sandbox Code Playgroud)
因此我尝试以下方法;
tf.exe workfold /unmap /workspace:TestWorkspace E:\Temp /collection:http://tfs2012:8080/tfs/CollectionOne/
Run Code Online (Sandbox Code Playgroud)
哪个失败了以下;
The option collection is not allowed.
Run Code Online (Sandbox Code Playgroud)
同时指定workpsace的所有者也没有帮助,因为它们归同一个用户所有.
如何取消映射两个或多个集合中存在的工作空间?
tf merge /recursive /candidate $/foo/ExUI $/bar/ExUI
Changeset Author Date
--------- -------------------------------- ----------
23438 Fred_Bloggs 04/05/2010
23609 Jimmy_jones 11/05/2010
23943* John_doe 25/05/2010
Run Code Online (Sandbox Code Playgroud)
任何人都可以在上面的输出中解释星号的用途.我假设它表示变更集包括当前查询范围之外的变化并且是"部分"的,但在调查时并非如此.
有什么优惠?如果有办法识别这种变更集,那将非常有用.目前的计划是我们必须将每个变更集的内容转储到文件中,并手动检查范围之外的任何变更.
我在硬盘上有项目的本地文件所在的文件夹的全名。现在,我需要从TFS服务器获取该项目的最新对应文件。
我的目的是检索两个版本并进行比较(使用C#)。
通过Microsoft TF命令行工具获取这些文件的最佳方法是什么?
我正试图从命令行从TFS中获取一个项目.我有它在服务器上的位置(以...开头$/)和我想要放入的目录.
我导航到该目录,键入tf workspace /new /s:<servername>并输入工作区名称.
接下来我键入tf get /force /recursive /version:W<workspacename>,它返回'所有文件都是最新的',但它没有下载任何东西.
此外,我想将项目下载到工作区目录中,然后<projectname>,它目前创建了一堆文件夹(基于$/the/long/path/to/the/<projectname>服务器).
有没有办法可以做到这一点,还是我需要在完成后移动它?
我正在使用一个本地工作区在我的机器上开发代码来获取并检查来自TFS的代码.我还在构建一个使用我的机器并需要获取最新代码的自动CI应用程序.我使用以下内容来获取CI应用的最新信息:
tf get $/abc/abc /recursive /all
Run Code Online (Sandbox Code Playgroud)
我想使用不同的本地工作区(CI工作区)来获取最新信息以避免与开发代码发生冲突.但是使用tf,我在使用get命令时无法指定工作空间,并且MSDN doc无论如何都不显示.如何使用"tf get"指定我想要使用的工作空间?
我正在使用该TF.EXE实用程序将一些构建输出自动移动到TFS中,这是我们自动化构建过程的一部分。
这是命令行:
tf.exe add C:\Output\*.* /recursive /noprompt
tf.exe checkin C:\Output\*.* /recursive /noprompt
Run Code Online (Sandbox Code Playgroud)
除了输出文件之一具有.dll扩展名的皱纹之外,所有这些都很好用。最初,此文件将按您期望的方式拾取,然后在最后输出以下有用信息:
Items matching the following exclusions were ignored: *.dll
Run Code Online (Sandbox Code Playgroud) 使用tf.exe(TFS的命令行实用工具),我可以通过简单的步骤自动使用批处理文件中的tf.exe合并两个分支的过程:
但是,在签入更改时,无论是否使用/ Recursive,“ TF Checkin”对话框都会显示在对话框中选择的所有未决更改。
我想要的是:仅选择所选文件夹中的已修改文件,而不是所有未决的更改。请注意,这是一个随机的事情,因为我的文件夹中有100个文件,因此仅应选择在合并期间更改的文件(肯定会修改这些文件)。
我期望的解决方案:为我的自动合并过程创建一个单独的工作区。这将隔离签入过程,并仅选择通过此工作区进行的更改。
另一个可能性:是否可以检入特定文件夹中的文件,而忽略其余的未决更改?
谢谢
嗨,我试图通过powershell运行"tf get"命令但是当它到达arugments时我总是遇到意外的令牌错误.
我在PowerShell脚本中遵循此帖后TFS命令的说明
发生错误的行是
"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\tf.exe" @("get", $args[$i])
Run Code Online (Sandbox Code Playgroud)
其中$ args [$ i]是用户输入的参数,但脚本在调用tf.exe后停止执行
有人可以帮帮我吗?谢谢.
另一个用户在整个特定项目中的不同位置进行了多处更改.
如何查看特定用户签入的文件?
在 TFS 构建的构建日志中,我看到了命令的使用tf vc scorch。这看起来很有趣,似乎有点像git clean并且可能很有帮助,但由于某些奇怪的原因scorch没有记录。这是一些不适合公共使用的内部事物吗?
键入tf vc /?不会列出scorch命令,tf vs scorch /?也不会解释参数。它也未在 docs.microsoft.com 上列出。
我在哪里可以找到它的完整文档?