TFS 自动同步Server 端文件的批处理命令
TFS 自动同步Server 端文件的批处理命令
目前在我们组的工作中很多时候需要将TFS上Server端的代码自动无人值守的同步到本地中来, 找到了一些解决方案的资料http://bbs.scmroad.com/archiver/?tid-21003.html。
经过试验,我们总结成以下步骤,希望对大家有所借鉴。
Steps:
1. 点选VS Source Explorer 上面的TFS目录列表。
2. 新建一个TFS 的 workspace。
3. 点击Source Control Folder 。
4. 在Source folder中选择你要用从Server端同步的目录。
5. 在Local Folder中选择本地同步的文件夹。

6.打开本地注册表,进入下图中标注的Key node path. 新建一个键值项,键值项的value指向你的TFS Server地址。
如果新建的key(E.g. TFSServer)的父节点的node(E.g. Servers)不存在, 则需要先创建一个。

7.新建一个批处理文件,写入以下代码。将批处理加到Windows的计划任务后即可自动执行同步TFS。
@ECHO OFF
REM 本地映射TFS上project的路径
SET GetPath="I:\TFSAutoDownload\TFSRFT_Gen850"
REM TFS上project的路径
SET TFSPath="$/Geneva_QA/Branches/Release/Geneva_8.5.Up4/RFTTrunk"
REM 创建的用于同步的TFS Workspace的名字
SET WorkspaceName="TFSAuto850"
REM 在注册表中注册的TFS的键值
SET TFSServer="TFSServer"
REM 本地安装的TFS的Explore路径,一般默认的是指向C盘
SET VSLocPath="E:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE
ECHO Trying TFS get...
ECHO.
REM IF NOT EXIST Create GetPath
IF NOT EXIST %Getpath% MD %Getpath%
REM if exists remove WORKSPACE and create NEW WORKSPACE
REM 开始执行同步的时候在参数列表中要给出连接帐号和密码
%VSLocPath%\tf.exe" workspace /delete %WorkspaceName% /noprompt /s:%TFSServer% /login:dwei,!ufida1
%VSLocPath%\tf.exe" workspace /new /s:%TFSServer% %WorkspaceName% /noprompt /login:dwei,!ufida1
REM unmap default WORKING FOLDER for newly created WORKSPACE
%VSLocPath%\tf.exe" workfold /s:%TFSServer% /workspace:%WorkspaceName% /unmap $/ /login:dwei,!ufida1
REM map WORKING FOLDER for newly created WORKSPACE
%VSLocPath%\tf.exe" workfold /server:%TFSServer% /workspace:%WorkspaceName% /map %TFSPath% %Getpath% /login:dwei,!ufida1
REM get the recent path through DOS command
pushd %Getpath%
REM get latest source from TFS
%VSLocPath%\tf.exe" get %TFSPath% /recursive /noprompt /login:dwei,!ufida1
ECHO.
REM move back to actual path through DOS command
popd
ECHO TFS get completed...
TFS 自动同步Server 端文件的批处理命令的更多相关文章
- SVN与TFS自动同步脚本(很实用)
一直都在园子里看文章,因为各种原因懒得写文章.最近稍得空闲,把这几天的工作成果分享一下. 因为工作需要,开发人员使用Qt进行系统移动端的开发,Qt的版本控制却不提供连接TFS的设置,只有使用svn.没 ...
- HBase 协处理器编程详解第一部分:Server 端代码编写
Hbase 协处理器 Coprocessor 简介 HBase 是一款基于 Hadoop 的 key-value 数据库,它提供了对 HDFS 上数据的高效随机读写服务,完美地填补了 Hadoop M ...
- Windows Server 2008文件同步
配置Windows Server 2008文件同步 摘要: 众所周知,Linux系统可以用rsync来实现文件或目录的同步,windows系统下也一样可以.我们现在就用cwRsync来实现wind ...
- Rsync+Inotify实现文件自动同步
1>rsync概述 rsync的优点与不足 rsync与传统的cp.tar备份方式相比,rsync具有安全性高.备份迅速.支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求 ...
- 由WSDL文件生成WEB service server端C#程序(转)
一般一个已经实现功能的WEB Server会发布自己的WSDL文件,供客户端生成代理类. 但有时是先有的server与client交互的接口定义(WSDL)文件,然后由server和client端分别 ...
- zabbix server端自动发现和zabbix agent端自动注册
一.zabbix自动发现 利用zabbix的discovery功能可以实现自动批量添加主机的功能. Zabbix自动发现实现自定义主机名: 通过自动发现添加的客户端主机的Host name 是以IP地 ...
- Windows与Linux之间的文件自动同步
问题:在工作中遇到一个场景,需要每天定时将Linux机器上的文件自动同步到Windows机器上. 解决方案有两个: 1.在Windows 机器上设置共享目录,然后在Linux机器上挂载共享 目录,每天 ...
- 12.2 中的Data Guard Standby 密码文件自动同步 (Doc ID 2307365.1)
Data Guard Standby Automatic Password file Synchronization in 12.2 (Doc ID 2307365.1) APPLIES TO: Or ...
- Linux下svn提交文件后自动同步更新到网站目录
有时,对于多文件需要上传到服务器的时候将会很麻烦,但是如果使用svn的钩子脚本就容易实现本地提交svn后,自动同步代码文件到远程服务器的网站目录下,而不必手动上传了. 首先,在网站目录下checkou ...
随机推荐
- ng-class的用法
最近在学习angular框架,ng-class是angular框架的一个指令,这里是ng-class指令的官方解释: ng-class 指令用于给 HTML 元素动态绑定一个或多个 CSS 类. ng ...
- 修改phpcms会员登录后头部登陆条的会员名称不带括号
phpcms会员登录后显示会员名称是带括号的,现在把他修改成不带括号. 找到函数库libs/functions/global.func.php,修改如下即可: function get_nicknam ...
- 我是如何在我的unbuntu 虚拟机上安装 配置QT的
①使用 linux公社 上面的脚本下载 qt5.5离线版 在上一篇随笔中 ②配置环境变量使bash能早到qmake编译器 # sudo vi /etc/profile (打开 全局环境变量保存位置) ...
- Error:Execution failed for task ':app:mergeDebugResources'. > Some file crunching failed, see logs f
今天调试安卓程序遇到的问题Error:Execution failed for task ':app:mergeDebugResources'. > Some file crunching fa ...
- Java.lang.String 乱码反编译
这个有个前提就是要知道错误的编码和应该转换的正确的编码 比如 gbk = >utf-8 可以 System.out.println("具体的乱码".getBytes(&quo ...
- Java中封装、继承和多态
封装: 封装实际上使用方法将类的数据隐藏起来,控制用户对类的修改和访问数据的程度. 适当的封装可以让程式码更容易理解和维护,也加强了程式码的安全性. 访问修饰符有public,private,prot ...
- 因为换工作,需要学习CCNA的课程
听说集齐7个CCIE就可以召唤神龙,不知道是不是真的,从CCNA开始吧! 加油!!!
- Javascript 中的神器——Promise
Promise in js 回调函数真正的问题在于他剥夺了我们使用 return 和 throw 这些关键字的能力.而 Promise 很好地解决了这一切. 2015 年 6 月,ECMAScript ...
- subprocess模块
subprocess的目的就是启动一个新的进程并且与之通信. subprocess模块中只定义了一个类: Popen.可以使用Popen来创建进程,并与进程进行复杂的交互.它的构造函数如下: subp ...
- Jquery:hide一个元素,需要注意的问题(offset)
$(".load_more").css('display','none'); 或 $(that.more).find("strong").hide(); 需要注 ...