专家课堂 SVN使用说明详解
创始人
2024-07-02 12:31:31
0

本节和大家学习一下SVN使用说明,本节内容主要针对初学者,在这里和大家分享一下,看完本文你肯定有不少收获,希望本文能教会你更多东西,欢迎打击一起来学习SVN使用说明方面的知识。下面是具体介绍。

分支与合并
分支就是在另外一个地方管理代码的版本,而不影响主线(trunk)的代码。分支的原因有很多,***次使用svn都希望建立一个分支,然后在自己的分支上工作,相当于自己的独立的工作空间,这种工作方式没有错,但是svn支持并不是很好,需要编写comment的时候记录下每次合并代码的版本号,因此我认为目前分支***的实践是为某个工作目的创建一个分支,功能实现以后立刻在trunk中合并这个内容,分支的使命完成后就可以删除了。
SVN使用说明介绍中分支其实很简单,就是copy一下
kkmao@Loongson:~/expe/workingcopy$svncopyfile:///home/kkmao/expe/repos/trunkfile:///home/kkmao/expe/repos/branches/hi提交后的修订版为4。
现在你可以选择把那个hi分支checkout出来修改,这样子很简单直接,也可以把本地switch过去,省一点网络带宽
kkmao@Loongson:~/expe/workingcopy$svninfo|grepURL
地址(URL):file:///home/kkmao/expe/repos/trunk
kkmao@Loongson:~/expe/workingcopy$svnswitchfile:///home/kkmao/expe/repos/branches/hi于修订版4。
kkmao@Loongson:~/expe/workingcopy$svninfo|grepURL
地址(URL):file:///home/kkmao/expe/repos/branches/hi
这个时候你本地的workingcopy已经和新的URL发生联系了,所有的commit都朝向新的URL
ok现在我开始修改,就是把hello换成hi。
kkmao@Loongson:~/expe/workingcopy$cathello
hiword.
Iamkkmao,whoareyou.
但是我发现我错了,其实我是想加一行hi,我觉得我改了太多了太乱了,索性恢复到我checkout时候的版本kkmao@Loongson:~/expe/workingcopy$svnreverthello
已恢复“hello”
我加了一行以后重新commit
kkmao@Loongson:~/expe/workingcopy$cathello
helloworld.
hiworld,heihei~~~
Iamkkmao,whoareyou.
kkmao@Loongson:~/expe/workingcopy$svncihello
正在发送hello
传输文件数据.
提交后的修订版为5。这个时候我转回去,开始合并
kkmao@Loongson:~/expe/workingcopy$svnswitchfile:///home/kkmao/expe/repos/trunk
Uhello更新至修订版5。
kkmao@Loongson:~/expe/workingcopy$cathello
helloword.
Iamkkmao,whoareyou.
当然我不急于合并,我添加一个文件模拟主线仍然进行着有序的开发
kkmao@Loongson:~/expe/workingcopy$vimaccessory
kkmao@Loongson:~/expe/workingcopy$svnaddaccessory
Aaccessory
kkmao@Loongson:~/expe/workingcopy$svnci-m"addaccessory"
新增accessory
传输文件数据.
提交后的修订版为6。
OK,开始合并
合并的过程一开始比较难理解,其实简单的说就是把分支上面两个版本之间所作的修改作为一个patch,然后应用到你的本地上面
记住你比较的是分支的两个版本,比如说分支开发是从r10到r20,执行svnmerge的效果相当于把r20到r10两个版本树做一个diff-urN生成一个patch,然后执行patch-p1命令。问题是怎么找出这两个版本呢?SVN使用说明接下来为大家介绍。
首先我们找出我们是从那个版本开始分支的
kkmao@Loongson:~/expe/workingcopy$svnlog--stop-on-copyfile:///home/kkmao/expe/repos/branches/hi
------------------------------------------------------------------------
r5|kkmao|2007-01-0211:52:56+0800(二,021月2007)|2lines
addhi
------------------------------------------------------------------------
r4|kkmao|2007-01-0211:43:08+0800(二,021月2007)|4lines
hellotohi
------------------------------------------------------------------------
也就是说我们从r4开始我们的分支,到r5完成,因此我们执行
kkmao@Loongson:~/expe/workingcopy$svnmerge-r4:5file:///home/kkmao/expe/repos/branches/hi
Uhello
kkmao@Loongson:~/expe/workingcopy$cathello
helloworld.
hiworld,heihei~~~
Iamkkmao,whoareyou.
完成了合并,注意所有的更改都在本地,应该提交一次,并且要记录合并的版本
kkmao@Loongson:~/expe/workingcopy$svnci-m"mergefile:///home/kkmao/expe/repos/branches/hi-r4:5"
正在发送hello
传输文件数据.
提交后的修订版为7。如果hi分支仍然继续开发,请注意下次合并应该从r5开始,避免合并重复的内容s。本节讲解SVN使用说明完毕,请关注本节其他相关报道。

【编辑推荐】

  1. SVN使用手册之入门篇
  2. Windows下SVN使用手册简明介绍
  3. ApacheSVN服务器安装指导手册
  4. Windows操作系统中SVN使用手册详解
  5. SVN服务器安装指导手册

相关内容

热门资讯

施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...
2012年第四季度互联网状况报... [[71653]]  北京时间4月25日消息,据国外媒体报道,全球知名的云平台公司Akamai Te...
由浅入深学习CentOS入门 在系统的学习CentOS入门的知识中,我们掌握了一些基本的设置。今天我们来讲一下CentOS入门中的...
虚拟现实 人工智能和人体未来会... 探讨像虚拟现实和人工智能这样的技术将会跟人体发生怎样的融合。未来将会出现模糊虚拟现实和现实本身界限的...
VMware vFabric (2012年5月17日中国北京)——全球虚拟化和云基础架构厂商VMware公司(NYSE:VMW)今...