(三)版本控制管理器之CVS(下)
在上一篇文章《(二)版本控制管理器之CVS(上)》中,我为大家介绍了什么是CVS、CVS的特点、CVS的安装、CVSNT服务器的配置、TortoiseCVS客户端的配置等,本篇文章继续为大家分享关于CVS的知识,Visual Studio 开发工具如何结合CVS一同开发使用。
一讲到微软这家大牛公司,就想到它得意开发集成工具的作品:Visual Studio,很多开发团队或公司在使用Visual Studio做项目开发的时候很自然的使用Visual SourceSafe(VSS)作为其源码管理工具,在后面的文章我会大家一一讲解。
(1)建立Visual Studio.Net工程并加入到CVS中
与SourceSafe相比,CVS中的Repository相当于SourceSafe中的Database,CVS中的Module与客户端的目录结构一一对应。因此,Visual Studio.Net以目录为单位,将Solution保存在CVS对应Modules中。
A)建立新的Visual Studio.Net工程(任意),Solution视图如下所示:

此时VS.Net中有一个名为CVSSolution的解决方案(Solution)以及在CVSSolution下有一个名为GraphicsPath1项目(Project)。
B)将CVSSolution加入CVS,右击Solution视图,在弹出菜单中选择“Add Solution to Source Control…”,将弹出以下对话框:

CVS的远程访问一般使用pserver协议,CVSROOT的格式如下:
:pserver:username:pasword@hostname:repository
此处的Repository选择了图二所示的MyFirstRepository,点击Check按钮测试服务器连接,此时将弹出CVS Login对话框,提示输入密码(当然密码也可以在CVSROOT中指定):

此时,如果连接成功,则会弹出以下信息对话框,否则会弹出信息:

(2)TortoiseCVS使用手册
1.设置工作目录:
在目录“D:repository”下,存放三个配置库。配置库的名称分别为“cvstrain”、“cvstrain1”、“cvstrain2”。则在“D:repository”下分别新建“cvstrain”、“cvstrain1”、“cvstrain2”三个目录。如图:

2.检出配置库:
在工作目录下,鼠标左键选中检出的配置库所对应的目录“cvstrain”,点击鼠标右键选择“CVS取出(K)…”检出配置库内容。如图:

弹出“取出模块”对话框。如图:

在“取出模块”对话框的选项中:
“CVSROOT:”填入mail中的CVSROOT信息;
“模块:”填入“.”;
配置库中的文件将开始下载到本地目录“D:repositorycvstrain”下。检出配置库完成,如图:

配置库检出后文件夹图标变为
。
3.更新配置库:
鼠标左键选中目录“cvstrain”,点击鼠标右键,选择“CVS更新(U)”,如图:

4.修改、提交文件:
文件修改后文件图标显示为
,在修改的文件上鼠标右键选择“CVS提交(C)…”。如图:

在“提交”对话框中的“注释”写一些简洁的说明文字,点击“确认”按钮。添加、提交文件完成。如图:

文件提交成功后文件图标显示为
。
5.添加、提交文件:
不在配置库中的文件图标显示为
在待添加的文件上鼠标右键选择“CVS添加(A)…”。如图:

在“添加”对话框中确认添加的文件格式是否正确,点击“确认”按钮添加。如图:

注意
添加有二种方式:
1.以文本文件/ASCII方式添加。
2.以二进制方式添加。
如添加文件时需要修改文件格式,在文件上点击右键,选择添加的方式。如图:

文件添加后图标显示为
。
6.删除、提交文件:
在待删除文件“test1.txt”上鼠标右键选择“CVS”→“删除(R)”。如图:

在本地目录空白处鼠标右键选择“CVS提交(C)…”。如图:


7.删除目录:
TortoiseCVS界面上并没有这样的功能。不过,可以在CVS服务器仓库中手动删除目录。若需要删除目录,请与SCM工程师联系。
8.创建标签:
在待创建标签的文件上鼠标右键选择“CVS”→“标签(T)”。如图:

弹出“标签”对话框中,选择“创建新标签”,填写要添加的tag为“build-abc”。点击“确认”按钮。如图:

查看文件标签,在文件上右键选择“CVS” →“版本分支图(G)…”。如图:


9.删除标签:
在待删除标签的文件鼠标右键选择“CVS”→“标签(T)”。如图:

弹出“标签”对话框中,选择“删除已有的标签”,点击“确认”按钮。如图:


10.查看历史版本:
在待查看文件上鼠标右键选择“CVS” →“版本分支图(G)…”。如图:

在“版本分支图”中查看文件历史版本。如图:

附:文件图标说明

链接文章:https://my.oschina.net/tadcat/blog/150033
本篇文章到这里就基本对CVS这个版本控制管理器的讲述完了,想必大家都对CVS都不会陌生了吧,其实它的操作跟SVN相差不了多少,在下一篇文章中我们继续了解下一个版本控制器(VSS),我将在这里带领大家了解版本控制的奥秘,前提是大家真心跟随本人走进那个领域,若本篇文章存在不足,请留言赐教。
A young ilder ~ an old beggar !
(三)版本控制管理器之CVS(下)的更多相关文章
- (二)版本控制管理器之CVS(上)
在前一篇<(一)版本控制管理器之发展史>的介绍中,有提到古典时期的CVS,那什么是CVS?CVS特点是什么?怎么个用法?等一系列的问题,虽然这个版本控制管理器早已过时,但大家了解下也不妨, ...
- (四)版本控制管理器之VSS
在上一篇<(二)版本控制管理器值CVS(下)>的文章中,我为大家介绍了CVS这个版本控制器,接下来我继续跟大家分享介绍下一个版本控制管理器--VSS,为什么要说这个版本控制器呢?早已过时的 ...
- 三十二、Java图形化界面设计——布局管理器之CardLayout(卡片布局)
摘自 http://blog.csdn.net/liujun13579/article/details/7773945 三十二.Java图形化界面设计--布局管理器之CardLayout(卡片布局) ...
- 三十一、Java图形化界面设计——布局管理器之GridLayout(网格布局)
摘自http://blog.csdn.net/liujun13579/article/details/7772491 三十一.Java图形化界面设计--布局管理器之GridLayout(网格布局) 网 ...
- 三十三、Java图形化界面设计——布局管理器之null布局(空布局)
摘自http://blog.csdn.net/liujun13579/article/details/7774267 三十三.Java图形化界面设计--布局管理器之null布局(空布局) 一般容器都有 ...
- Swing-布局管理器之GridLayout(网格布局)-入门
注:本文内容源自于三十一.Java图形化界面设计——布局管理器之GridLayout(网格布局),笔者在学习过程中根据自身理解修改了部分代码. 网格布局特点: l 使容器中的各组件呈M行×N列的网格 ...
- 通过TortoiseGit来使用Github或Visual Studio Online版本控制管理
一.前言 关于Git源码不再多阐述,它就是一款开源分布式版本控制工具,它在源码管理领土上目前为止,使用者比例很大,越来越多的人使用该工具来管理项目源码,且相当多的开源的项目都移步到Github中,如: ...
- 转:Java图形化界面设计——布局管理器之FlowLayout(流式布局)其他请参考转载出处网址
http://blog.csdn.net/liujun13579/article/details/7771191 前文讲解了JFrame.JPanel,其中已经涉及到了空布局的使用.Java虽然可以以 ...
- Java图形化界面设计——布局管理器之FlowLayout(流式布局)
一.布局管理器所属类包 所属类包 布局管理器名称 说明 Java.awt FlowLayout(流式布局) 组件按照加入的先后顺序按照设置的对齐方式从左向右排列,一行排满到下一行开始继续排列 Bord ...
随机推荐
- sql server 性能调优之 资源等待 CXPACKET
一.概述 CXPACKET是指:线程正在等待彼此完成并行处理.什么意思呢? 当sql server发现一条指令复杂时,会决定用多个线程并行来执行,由于某些并行线程已完成工作,在等待其它并行线程来同步 ...
- Android--UI之Button
前言 最近一直在讲androidUI控件的使用方式,这篇博客讲解一下基本上属于用处最广泛的控件之一的Button控件.如果有过其他平台开发经验的程序员,对按钮是不会陌生的.本篇博客首先讲解一下Andr ...
- npm无响应处理办法
方法一:使用cnpm 1. 安装 `npm install cnpm -g` 2.设置使用淘宝镜像源 `npm install cnpm -g --registry=https://registry. ...
- Java 容器 & 泛型:三、HashSet,TreeSet 和 LinkedHashSet比较
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket 上一篇总结了下ArrayList .LinkedList和Vector比较,今天泥瓦匠总结下Hash ...
- leetcode — combination-sum
import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * Source : https://o ...
- spring-boot(二)
学习文章来自:http://www.ityouknow.com/spring-boot.html web开发 spring boot web开发非常的简单,其中包括常用的json输出.filters. ...
- 第一册:lesson ninety-seven。
原文: A small blue case. I left a suitcase on the train to London the other day. Can you describe it , ...
- 第一册:lesson fifteen。
原文:Your passports,please. A:Are you Swedish? B:No,we are not. We are Danish. A:Are your friends Dani ...
- 深入理解Redis内存模型
前言 Redis是目前最火爆的内存数据库之一,通过在内存中读写数据,大大提高了读写速度,可以说Redis是实现网站高并发不可或缺的一部分. 我们使用Redis时,会接触Redis的5种对象类型(字符串 ...
- dubbo+zookeeper+springBoot框架整合与dubbo泛型调用演示
dubbo + zookeeper + spring Boot框架整合与dubbo泛型调用演示 By:客 授客 QQ:1033553122 欢迎加入全国软件测试交流 QQ 群:7156436 ...