Team Explorer Everywhere:检索单个文件的最佳方法是什么?

时间:2014-06-02 15:01:31

标签: tfs command-line-interface team-explorer-everywhere

我为成为MicroSoft产品的新手而道歉,但我需要支持TFS集成到现有工具中。我环顾四周,认为Team Explorer Everywhere是要走的路,因为它是跨平台的,似乎是用户友好的,足以包装在python中并暴露某个功能子集。

我需要做的事实上很简单,我相信我的问题源于我对自己缺乏了解。我需要从TFS检索单个zip文件,将此文件部署到应用程序服务器,创建包含日志和其他部署工件的第二个zip文件,将第二个zip添加到Team项目并将其全部重新检入TFS。

部署的所有代码都写入并包括创建第二个zip文件,我无法弄清楚的是一个简单的结帐/签入程序。

这是我尝试过的课程:

C:\> mkdir collection
C:\> cd collection
C:\collection> tf workspace /new /comment:TEMP /collection:http://www.tfs.server.com:8080/tfs/testCollection /location:local tempWorkspace
C:\collection> tf workfold /map /collection:http://www.tfs.server.com:8080/tfs/testCollection $/serverFolder .
C:\collection> tf get

现在由于某种原因我的文件夹是空的。我知道这个文件夹中有文件并且它们在这个集合中,可能有一个简单的原因,我的文件夹是空的,但在这一点上的故障排除我认为必须有一种更简单的方法来检索一个文件(可能不是),但我认为我应该问,因为这与以下相比似乎很多:

$ git clone https://url/for/repo

无论如何,非常感谢您查看我的问题,我们将非常感谢任何指导。

1 个答案:

答案 0 :(得分:1)

好的,所以看来错别字以及一些误解是导致我进退两难的原因。我正在回答我自己的问题,因为我觉得将来有些人可能会遇到这个问题。

我最大的错误(加上我认为是一个错误)是服务器路径中的拼写错误,这是以下某些命令所必需的。我错误地输入了“tf workfold -map”命令中的服务器路径,该命令成功,当发出后续的“tf get”命令时,我收到了“非常有用”的输出,表明“所有文件都是最新的”。

以下是需要为我的任务集执行的常见任务列表,但也可用作学习使用TFS的备忘单:

创建工作区并获取所有文件

mkdir $TEMP_DIR$
tf workspace -new $TEMP_WORKSPACE$ -collection:$SERVER_URL$/$COLLECTION_NAME$
tf workfold -map $SERVER_PATH$ -workspace:$TEMP_WORKSPACE$ $TEMP_DIR$
cd $TEMP_DIR$
tf get

其中:

$TEMP_WORKSPACE$  = any string will do (Should be configurable)
$SERVER_URL$      = The URL of your TFS server (usually ends with "/tfs" and by default is on port 8080)
$COLLECTION_NAME$ = The name of the collection (i.e. DefaultCollection)
$TEMP_DIR$        = Any valid directory (Relative paths are not allowed)
$SERVER_PATH$     = The path to the team project

将文件添加到repo并签入

注意:必须位于使用上述workfold命令

映射的目录中
tf add $FILENAME$

其中:

$FILENAME$ = Name of file to add (Must exist!)

登记入住更改

注意:必须位于使用上述workfold命令

映射的目录中
tf checkin -comment:$COMMENT$

其中:

$COMMENT$  = A comment to associate with the changeset

获取工作空间的状态

注意:必须位于使用上述workfold命令

映射的目录中
tf status

取消映射本地目录

tf workfold -unmap -collection:$SERVER_URL$/$COLLECTION_NAME$ -workspace:$TEMP_WORKSPACE$ $TEMP_DIR$

其中:

$TEMP_WORKSPACE$  = any string will do (Should be configurable)
$SERVER_URL$      = The URL of your TFS server (usually ends with "/tfs" and by default is on port 8080)
$COLLECTION_NAME$ = The name of the collection (i.e. DefaultCollection)
$TEMP_DIR$        = Any valid directory (Relative paths are not allowed)

删除工作区

tf workspace -delete -collection:$SERVER_URL$/$COLLECTION_NAME$ $TEMP_WORKSPACE$

其中:

$TEMP_WORKSPACE$  = any string will do (Should be configurable)
$SERVER_URL$      = The URL of your TFS server (usually ends with "/tfs" and by default is on port 8080)
$COLLECTION_NAME$ = The name of the collection (i.e. DefaultCollection)