版本管控---Visual Source Safe(VSS)和Team Foundation Server(TFS)
Visual Source Safe 是用于软件专业开发人员的源代码管理工具
Team Foundation Server是为开发团队提供集成源代码管理、问题跟踪和进程管理的更改管理系统
相同点
1.同时开发产品的多个版本
2.在不影响其他版本的情况下对产品的一个已发布版本进行更改
3.快速检索一批相关文件,确定做出更改的用户和时间
4.比较文件的两个版本以及将更改从一个版本移至其他版本
5.都提供了命令行客户端和Visual Studio 2005 集成
不同点
1.结构区别
VSS
VSS 是仅包含客户端的源代码管理系统
它的客户端(如SourceSafeExplorer 和用于Visual Studio的插件)读写VSS 数据库,该数据库是通常存储在共享网络文件夹中的文件集合
TFS
Team Foundation 是客户端-服务器源代码管理系统,它使用.NET Web 服务访问存储在SQL Server 数据库中的项
Team Foundation 源代码管理的体系结构提高了性能和可靠性
2.安全和项目权限
VSS
在VSS 管理器程序中设置的VSS 用户权限和分配与对VSS数据库文件夹的Windows 共享权限无关
TFS
在Team Foundation 中,用户特定的操作权限和项目级别访问权限受Windows 用户帐户的限制
由Internet Information Server 安全地执行用户身份验证。
单独访问SQL Server 数据库的权限无需赋予执行源代码管理操作的个别用户。
因此,这样产生的Team Foundation 安全结构安全、可靠并易于管理。
3.可靠性
VSS
由于VSS 没有服务器组件,因此涉及将数据从客户端传输到数据库的操作是非事务性的。这意味着如果发生问题,操作就无法回滚
TFS
Team Foundation 是客户端-服务器应用程序,该应用程序利用不会受到网络连接问题影响的存储过程在数据库中执行写入操作。此外,还使用事务执行某些操作,以便在这些操作出 错时可以回滚
4.可伸缩性
VSS
建议的团队人数是二十或更少
数据量建议的大小限制是4 GB
TFS
Team Foundation 最多可支持五百名用户的团队
Team Foundation 服务器包含的数据量可达到SQL Server 数据库允许(千兆字节)且您的硬件可支持的最大数据量
5.功能差异
Team Foundation 中存储历史记录的方式的不同之处
添加和创建
在VSS 中,添加一个文件或文件夹时,会创建该文件及其父级的一个版本。在该父级历史记录中,该操作被记录为“添加”;而在该文件历史记录中,该操作被记录为“创 建”
在Team Foundation 中,添加一个文件或文件夹时,将只用“添加”操作创建该文件或文件夹自身的一个版本。不为此操作创建父级版本。
重命名、删除和撤消删除
在VSS 中,这些操作会创建父级的新版本
在Team Foundation 中,这些操作创建该项自身的一个新版本
移动
在Visual Source Safe 中,在移动某一文件夹时,将同时创建源和目标父文件夹的新版本,并对每个父级记录将该文件夹移入或移出父级的操作
在Team Foundation 中,“重命名”操作只创建F 的新版本。
VSS 中不存在的Team Foundation 功能
工作区
变更集
搁置集
Team Foundation 工作项
签入策略
签入说明
通过设置警报执行的电子邮件通知
Team Foundation 中不存在的VSS 功能
共享
固定
存档和还原
销毁
关键字扩展
---------------------
本文来自 wenjie315130552 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/wenjie315130552/article/details/7339582?utm_source=copy
版本管控---Visual Source Safe(VSS)和Team Foundation Server(TFS)的更多相关文章
- Visual Studio 6 (VC6)连接Team Foundation Server (TFS 2018),实现源代码的版本管理
1. 概述 Visual Studio 6(VB6, VC6, Foxpro-)是微软公司在1998年推出的一款基于Windows平台的软件开发工具,也是微软推出.NET开发框架之前的最后一个IDE工 ...
- PLSQL(PL/SQL)集成Team Foundation Server (TFS),实现数据库代码的版本管理
PL/SQL是面向Oralcle数据库的集成开发环境,是众多Oracle数据库开发人员的主要工具.由于PL/SQL(百度百科)不仅是一种SQL语言,更是一种过程编程语言,在项目实施过程中,会积累大量除 ...
- 在域信任环境中使用 Team Foundation Server (TFS 2013)
原文:在域信任环境中使用 Team Foundation Server (TFS 2013) 1. 用户情景和方案: XX公司的大部分软件产品通过软件外包的方式由开发商完成.为加强对软件开发的进度和质 ...
- Team Foundation Server (TFS)与Project Server集成,使用DNS(友好地址)地址注册PWA
问题描述: 当Team Foundation Server(TFS 2010/2012/2013)与Project Server高可用性的环境集成时,必然会使用Project Server (PWA) ...
- 在Sublime中集成Team Foundation Server (TFS),实现版本管理
Sublime是一款具有代码高亮.语法提示.自动完成且反应快速的编辑器软件,由于它开发的技术架构.丰富的插件,和轻盈而快速的编程响应,Sublime广受程序员的爱好.在C, C++, Javascri ...
- 让Team Foundation Server/TFS自动记住用户名密码解决方案
在使用Team Foundation Server(以下简称TFS) 的时候,在每次打开Visual Studio TFS时候,需要输入用户名和秘密,比较麻烦.现提供一种方法可以解决这个问题: 依次执 ...
- 自定义Team Foundation Server (TFS) 与Project Professional的集成字段
用户可以象使用Office Excel一样,使用Project Professional连接TFS,将数据下载到本地修改,并且发布到TFS服务器上,如果你习惯使用Project来计划你的项目,那么Pr ...
- 在Team Foundation Server (TFS)的代码库或配置库中查找文件或代码
[update 2017.2.11] 最新版本的TFS 2017已经增加了代码搜索功能,可以参考这个链接 https://blogs.msdn.microsoft.com/visualstudioal ...
- In-Place upgrade to Team Foundation Server (TFS) 2015 from TFS 2013Team Foundation Server TFS TFS 2015 TFS upgrade TFS with Sharepoint
This upgrade document gives detailed step by step procedure for the In-Place upgrade from TFS 2013 t ...
随机推荐
- [mvc]记一次“项目”的历程
大二上半学期因为选修课的原因,答应帮老师完善学院的选课系统.在这之前没有做过一个可以成为“项目”的项目,本着挑战自己的原则和可以不上选修课的福利,断断续续用了一学期的时间来完善这个选课系统. 接受这个 ...
- Java笔记(一)GC及类加载
垃圾回收器(GC) 垃圾回收器:java中有一个线程,专门负责JVM中垃圾内存的释放 垃圾:没有引用的内存节点 垃圾回收的算法 注意:垃圾回收有自己的算法,我们是不能控制垃圾回 ...
- P3357 最长k可重线段集问题 网络流
P3357 最长k可重线段集问题 题目描述 给定平面 x-O-yx−O−y 上 nn 个开线段组成的集合 II,和一个正整数 kk .试设计一个算法,从开线段集合 II 中选取出开线段集合 S\sub ...
- FTP枢轴攻击
简单来说,这是攻击者可以利用属于不同网络的那些系统的攻击. 本文作者:jishuzhain 对于这种攻击,攻击者需要利用主服务器来帮助攻击者将自己添加到本地网络中,然后攻击者就可以将客户端系统进行定位 ...
- [转载] cassandra Unable to complete request: one or more nodes were unavailable
今天碰到的问题跟这个一模一样,特地转过来记录一下 https://support.datastax.com/hc/en-us/articles/204893189-CQL-query-results- ...
- Class文件分析
java源码和class文件 源码: package classloader; public class TestCase { private int value; public int test() ...
- vue2.0-router的绑定
1.首先在‘components’文件夹里面创建想要切换的路由. 2.在index.js文件里面引入地址并进行路由的注入. 3.使用<router-link to="path地址&qu ...
- hive连接mysql遇到的问题
启动hive之前应该先启动metastore,也是在bin目录下:./hive --service metastore &然后再启动hive: ./hive 今天连接hive时总是报错:Una ...
- C#-类-string/Manth/Random/DateTime-及练习
类一.string类:.Length 字符串的长度 .Trim() 去掉开头以及结尾的空格.TrimStart() 去掉开头的空格.TrimEnd() 去掉结尾的空格 .ToLower() 全部转换为 ...
- SparkSQL开窗函数 row_number()
开始编写我们的统计逻辑,使用row_number()函数 先说明一下,row_number()开窗函数的作用 其实就是给每个分组的数据,按照其排序顺序,打上一个分组内行号 比如说,有一个分组20151 ...