1. TFS是用来存储文件的服务器,放置不同版本的文件。因此文件的数量和内容因版本不同而不同。

在Fig-00中,服务器和本地的对应文件夹Common下的因版本不一致,所以文件数量是不一致的。

Fig-00

在下图Fig-01中,在本地的解决方案中,我们使用"显示所有文件"。相比TFS上的文件,发现缺少的3个文件是存在的,只是没有包含在当前项目当中。这也正 验证了TFS只存储文件本身,并不能体现项目文件的有效性。

Fig-01

  1. 如何正确的编辑文件?

我们来看一种不正确的做法的场景。

问题场景:我们通过KT着手维护一个新的项目名字为Homeland,需要把项目的源代码从版本1.0升级到2.0。拿到最新的源代码后,配置管理人员小A直接通过复制、粘贴的方式,把Source Code V2.0放到本地映射的路径下面。结果拷贝完毕后,我们发现文件的标识还是蓝色的锁。此时小A需要把更新的Source Code V2.0上传到服务器上,他选中本地Solution文件,右键点击后选中"获取最新文件",如Fig-02所示,同时选中第二项"当本地文件跟TFS上的版本一致时,覆盖所有文件"。

很显然服务器上是V1.0,本地是已经更新过的V2.0。如Fig-03所示系统检测到Log.cs文件在本地已经被更新过了。

Fig-02

Fig-03

我们需要处理这个冲突,如图Fig-04所示,我们选择第一项"签出并自动合并",这意味着以本地的文件为主,保留差异,系统自动会签出对应的Log.cs文件,然后执行签入即可。

这时候你会问"为什么不用签入呢",如果你这样操作过的话,你会发现这种情况下是没有签入动作的,因为你之前就没有执行"签出",何来签入呢?

Fig-04

正确的签入签出:

  1. 我们在编辑文件的时候,尽量操作单个文件,而不是像上文中描述的批量操作。
  2. 在更新文件的时候,一定记得先签出,然后再更新文件(包括上文中的覆盖文件的场景),最后再签入。
  3. 如果一定要从服务器上批量获取文件,建议勾选"Overwrite all files even if the local version matches the specified version."。

TFS使用笔记的更多相关文章

  1. TFS使用笔记——合并不同分支的代码

    问题描述:我们需要把2.37中改动的代码合并到2.38当中. 查看“Pending Changes”,单击“Change”列排序,查看merge的items,然后选中merge的items,最后“Ch ...

  2. 21.TFS文件系统搭建笔记

    TFS文件系统搭建笔记 参考地址: https://github.com/alibaba/tfs/blob/master/INSTALL.md https://github.com/alibaba/t ...

  3. Tfs 2015 代理池配置笔记

    Tfs的构建代理池其实是在代理服务器上开启一个TFSBuild的代理服务,配好相关的Tfs地址后,就能在Tfs管理界面看到了. 如果是Tfs服务和发布代理是同一台服务器,具体操作详见: 安装TFS20 ...

  4. BI项目记笔记索引

    这个笔记系列主要记录了在BI项目中,如何搭建环境进行源代码管理以及文档管理. 用到的产品包括: TFS Express Sharepoint Visual Studio SQL Server   配置 ...

  5. ts 使用Visual Studio2012和TFS网站管理源代码

        所需工具 Visual Studio 2012 http://tfs.visualstudio.com/ 微软网站 微软账号  hotmail 或live都行 达到目的 适合于个人项目,多用户 ...

  6. .NET学习笔记(1)— C#学习路线图

    目录 一:引言 二:.NET技术体系 三:常用工具汇总 四:学习资源汇总 五:书籍推荐 六:关于阅读技术书籍的经验 七:总结   一:引言 因为工作调整,从PHP开发零基础转型到.NET开发,前期没有 ...

  7. TFS 服务器更换后工作区无法绑定

    需要删除工作区,删除命令如下 tf workspace /delete 工作区名;创建的用户 /server:TFS服务器 例 tf workspace /delete WHQ-PC;whq /ser ...

  8. VSTO学习笔记(九)浅谈Excel内容比较

    原文:VSTO学习笔记(九)浅谈Excel内容比较 说起文件内容比较,或许我们首先想到的是UltraCompare这类专业比较的软件,其功能非常强大,能够对基于文本的文件内容作出快速.准确的比较,有详 ...

  9. Linux实战教学笔记22:企业级NFS网络文件共享服务

    目录 第二十二节 企业级NFS网络文件共享服务 第一章 NFS网络文件共享服务 1.1 NFS介绍 1.2 NFS系统原理介绍 1.3 NFS服务端部署环境准备 1.4 NFS server端的设置 ...

随机推荐

  1. C#(winform)的label自动换行

    Label 是没有自动换行属性的,不像Textbox有WordWrap属性 尽管没有自动换行的属性,但也能够自动换行, 首先 AutoSize改成false; 然后调整 Label的大小,长和宽 (也 ...

  2. UVM系统验证基础知识0(Questasim搭建第一个UVM环境)

    版权声明:本文为Times_poem原创文章,转载请告知原博主.特别声明:本文在原文基础上做了简单修改以适应文中举例在questasim下的运行,敬请原博主谅解. 需求说明:UVM系统验证 内容   ...

  3. JAVA练手--数组

    //数组 public static void main(String[] args) { //1. 数组排序和查找 { int[] intA = {5, 4, 2, 3, 1}; String[] ...

  4. [转]Calling an OData Service From a .NET Client (C#)

    本文转自:https://docs.microsoft.com/en-us/aspnet/web-api/overview/odata-support-in-aspnet-web-api/odata- ...

  5. as3中xml文件的加载和读取

    ---恢复内容开始--- as代码如下: xml如下: 总结: 用URLReuqest对象加载xml的url 创建一个URLLoader对象,将1中的URLRequest指定给他 给URLLoader ...

  6. [转]C# 6.0 的新特性

    本文的内容包括引入C#6.0中的新的语言特性有哪些. 还有已经被引入的代码名称为 “Roslyn”新编译器. 编译器是开放源码的,并且可以从 codeplex 网站的这个地址下载到源代码: https ...

  7. 使用Redis进行简单的数据缓存

    引入spring-data-redis包.jedis.connection-pool包 applicationContext.xml的配置 <!-- redis Connection --> ...

  8. c#参数修饰符-out

    out 关键字通过引用传递参数. 方法定义和调用方法必须显式使用out关键字: 调用方法时参数不必初始化,方法内必须对其赋值: 参数中可以声明多个out修饰的参数. 例: public void Us ...

  9. Android Studio中 图片资源存在但是运行时报错的问题

    最近看安卓遇到了了一个很头疼的问题,我明明在drawable文件夹中添加了图片资源,Android Studio 中也预加载了图片,但是在运行的时候就开始咔咔咔报错 = = 如下图所示: 图片后面显示 ...

  10. golang label breaks

    我们在for多层嵌套时,有时候需要直接跳出所有嵌套循环, 这时候就可以用到go的label breaks特征了. 先看一个范例代码: package main import (     "f ...