博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SVN之初恋与小三Meld优秀分支合并工具
阅读量:6905 次
发布时间:2019-06-27

本文共 2373 字,大约阅读时间需要 7 分钟。

目录

今天小宝鸽分享一篇SVN入门教程,比较适合刚接触SVN的猿友阅读。 

另外分享一个优秀的分支合并工具Meld,对SVN使用比较熟练的猿友们也可以了解一下咯。 
接下来将从下面几个维度向大家介绍:

(1)SVN简介与SVN环境搭建(附有安装包哦) 

(2)本地仓库建立以及一些常用操作 
(3)Meld的介绍与使用

接下来马上开始:

(1)SVN简介与SVN环境搭建(附有安装包哦)

1.1、SVN简介:SVN是Subversion的简称,是一个开放源代码的系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。

集中式代码管理的核心是服务器,所有开发者在开始新一天的工作之前必须从服务器获取代码,然后开发,最后解决冲突,提交。所有的版本信息都放在服务器上。对开发团队的协作十分有用。如果脱离了服务器,开发者基本上可以说是无法工作的。

SVN分支的使用:什么时候创建分支呢?目前的企业上是这样做的,对于一个新的功能或新的版本修改,会从主干上拉出一条分支,进行开发。假设有两个模块需要开发,上线时间不一样,那么分别从主干上拉一条分支,分别为A、B。假设A先开发完成,把A合并到主干上,主干上线(或者直接上线A)。待B开发完成,把B合并到主干,把主干代码上线即可。

SVN服务器有2种运行方式:独立服务器和借助apache运行。两种方式各有利弊,用户可以自行选择。独立SVN服务器不结合Apache安装使用,连接独立SVN服务器也不用HTTP协议。这是比较快捷的SVN服务器配置方法。后面的讲解小宝鸽将会介绍独立服务器的运行方式。

2.1、TortoiseSVN(SVN客户端)与Setup-Subversion-1.5.3(SVN服务器)的安装。 

TortoiseSVN下载: 提供了32位和64位的安装包。 
Setup-Subversion-1.5.3下载: 
下载完成后,采用默认方式将两者安装了即可。

(2)本地仓库建立以及一些常用操作

2.1、创建本地仓库,这里博主新建了一个文件夹(博主的是D:\svntest)作为本地仓库目录,创建本地仓库方式如下图所示,在D:\svntest目录下的空白地方右键:

这里写图片描述

2.2、配置用户名和密码,打开在刚刚创建的本地仓库目录下的conf文件夹,里面有svnserve.conf、passwd这两个文件夹,分别打开,去掉标注行对应的注释符“#”。

这里写图片描述 

这里写图片描述

其中上面的harry = harryssecret,sally = sallyssecret,harry和sally 为用户名,harryssecret和sallyssecret为密码。checkout和import时输入上面两个中任意一个用户名和密码即可。

2.3、接下来打开cmd.exe,输入命令svnserve -d -r D:\svntest,(D:\svntest为你创建的本地仓库的目录),回车就ok了,注意不要关掉对应cmd窗口(不然服务就停了)。

这里写图片描述

2.4、将资源上传到本地仓库,如下图。如果出现报错:期望文件系统格式在“1”到“3”之间;发现格式“4”,那么将之前创建的仓库删除了,重新用命令,创建,打开cmd.exe,输入命令:svnadmin create D:\svntest,回车即可。至于为什么出现这个问题,请查看 

。 
上面我输入的url是:svn://localhost/codetest1。如果需要输入用户名和密码,就输入2.2提到的用户名和密码。

这里写图片描述

2.5、checkout资源,如下图如果需要输入用户名和密码,就输入2.2提到的用户名和密码。

这里写图片描述

之后你就可以把url:svn://你电脑ip/codetest1(如svn://192.168.0.100/codetest1)给你同事或是舍友,如果你们是在同一个局域网下的话,他们也可以checkout啦。

2.6、commit提交修改后的资源,这里小宝鸽在checkout下来的项目里面修改了个new.txt文件,提交这个文件到仓库的操作如下:

这里写图片描述

2.7、update,更新也是同理的选中文件或文件夹,右击update就可以了


以下是第三方meld分支合并工具的介绍,如果不需要用到的猿友就可以不往下看了。


(3)Meld的介绍与使用

Meld 是一个可视化的文本差异比较工具,它可以跟多个版本控制系统集成,个人认为它是最好用的。比SVN或的默认diff工具好用太多了。小宝鸽极力推荐! 

安装包下载:

3.1、使用场景:比如你用svn开了两个分支,分别在这两个分支上进行开发。如果没有冲突自然是很好,直接用svn合并。但是如果出现修改了同一个文件的多个地方,那么svn肯定是不能够完美解决的。因为这时候并不知道你想要怎么处理,这时候需要人为思考,手动处理了。而Meld给你提供了这个方便。

3.2、使用教程:打开软件就会到了下图界面:

这里写图片描述

然后你要选择其中一个比较方式(文件、目录、版本)。对于两个分支比较,自然是选择Directory comparison(目录)啦。选择完比较方式之后就会出现下图,选择orther之后可以选择到某个目录。然后我们选择了两个目录(对应两个分支),点击Compare按钮:

这里写图片描述

这里写图片描述

点击了Compare之后就会来到下图:

这里写图片描述

其中颜色有变的就是不一样的,双击对应的文件会到如下图图文件对比,可以点击箭头选择你希望的处理操作。对于把新建的文件同步到另外一个分支上的,选中文件右击“copy right”就可以了。

这里写图片描述

最后别忘记了svn提交哦,更多功能留给猿友去研究了哈,加油~~

你可能感兴趣的文章
poj 1187 陨石的秘密
查看>>
数组常用的几种方法
查看>>
Kubernetes Job配置
查看>>
python基础:三层循环
查看>>
怎么把顶部的Django administration去掉!!
查看>>
知晓设计模式,框架,去提高开发效率,使代码简洁
查看>>
07-OpenLDAP密码审计
查看>>
使用Flex 和 Red5开发简单视频直播功能
查看>>
233
查看>>
第二十一章 任务、线程和同步
查看>>
HtmlDecode 解码  
查看>>
文件共享windows server 2008 服务器
查看>>
软考:两个通用思想
查看>>
初入koa2 -起步
查看>>
java 开发体系参考学习
查看>>
【转】如何阅读android源码
查看>>
Azure系列2.1.4 —— BlobInputStream
查看>>
关于面向对象的理解和类、对象,Java的三大特性
查看>>
1004 成绩排名
查看>>
【转载】【springmvc+mybatis项目实战】杰信商贸-1.项目背景
查看>>