zoukankan      html  css  js  c++  java
  • TFS使用笔记

    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."。

  • 相关阅读:
    Vue中使用clipboard实现复制功能
    在 Window 关闭时,无法将 Visibility 设置为 Visible,也无法调用 Show、ShowDialog、Close 或 WindowInteropHelper.EnsureHandle。
    iTextSharp 给PDF添加水印
    VS2017登录账户提示升级Edge浏览器的问题
    vue表单中,自动过滤前后空字符,再也不用正则表达式了
    vue中 axios的封装
    vue中 axios的封装
    js实现身份证、手机号加密,加密类型为*
    web前端,传统的jquery与vue结合,开发应用
    推荐系统入门笔记1---基于内容推荐的基础架构
  • 原文地址:https://www.cnblogs.com/mingle/p/TFS_Mannual.html
Copyright © 2011-2022 走看看