版本控制SVN的使用笔记

安装

客户端和服务端下载地址,打开网址,根据自己的操作系统下载对应的版本,window用户服务端一般安装的是VisualSVN,客户端安装TortoiseSVN,在实际工作中,我们一般只需要安装TortoiseSVN,对应的IDE中安装好svn插件就可以了。

SVN Checkout

进入公司的第一天,当然是将我们的开发项目从服务器上Checkout下来了,在checkout下来之前,我们需要先在本地新建几个文件夹,例如在D:盘下面新建一个code 文件夹,code下面分别新建branches 和 trunk文件夹,branches里面以后存放所有的项目分支, trunk里面以后存放项目主干,目录结果大致如下:

12
code ┌ branches	 ├ trunk

假如项目分支名称为project_V1.0.1_2015_01_01,则我们一般是再在d:\code\branches目录下新建一个名为project_V1.0.1_2015_01_01的文件夹,然后将分支checkout到该文件夹目录下.在以后有新的分支时,同样以分支名命名一个新的文件夹,然后check下来。checkout主干时无需在trunk目录下新建文件夹。最后我们会发现我们本地的目录结构是和SVN服务器上目录结构一致。

与资源库同步

在update和commit操作之前,我们都需要与资源库同步一下,目的是检查一下别人是否在你操作之前已经提交过代码造成了代码冲突,有冲突的文件默认一般会有一个红色的标记,当有冲突时就需要我们手动解决冲突后再执行update或者commit操作,这里记录下以eclipse为例,怎么解决代码冲突.
如下图中,左边表示本地的代码,右边表示远程服务器上的代码,同事在我之前提交了4个接口方法,左边public void test();方法是我新加的代码,

这时我在同步代码时就需要先解决冲突,这是只需要点击箭头指向的那个小圈Copy Current change from Right to Left就可以了,右边的代码会被copy到左边去.然后保存,在文件上鼠标右键点击,然后就可以更新代码了。当然你也可以先更新下来代码后再解决冲突.不一定需要先解决冲突在更新…

更新与提交

建议一定先同步后在执行更新或者提交操作,这样你好大家也都好.commit时一定写好提交注释.

合并代码

分支代码开发完了,我们需要将代码合并到主干上去进行测试,或者两个分支在同时进行不同功能开发时,最后我们需要把一个分支的代码合并到另外一个分支上去.首先我们需要知道我们的目标是什么,合并到分支,合并到主干,到分支,到主干!!!到哪里,重点就在哪里,就已谁为标准,例如我们分支合并到主干:
就以主干为主,在上右键,选择,选择Merge a range of revisions,点击next,然后在 URL to merge from 填写svn服务器上分支路径,如:

然后点击Next,再点击Test merge,开始测试合并代码了,这时如果文件有冲突会被标记为红色,注意,这不是真正的合并代码,正式的合并需要直接点击Merge,合并成功后,只是合并到了我们本地,需要的话,还需自己commit到服务器上.Merger的过程中还可能会出现冲突,出现冲突我们怎么解决呢。

解决冲突

如果合并代码出现冲突,会出现一个提示框,要你解决冲突:
解决冲突
然后编辑冲突,点击 Edit conflict 会跳转到代码冲突详情页:
代码详情
左边的Theirs:代表远程的代码,即这里我们的分支代码
右边的Mine:代码本地的代码,即合并到主干的主干代码
红色区域的地方就表示代码可能有冲突
这时候我们可以在左边区域或者右边区域鼠标右键,然后选择Use this text block 或者 use this whole file,一般我们是看哪边是最新的代码,然后就选中那边红色区域中的代码,然后选择Use this text block,以这个区域的代码为准,显示在下方区域.下方区域显示的是我们合并后最终的代码.
然后点击左上角的 save ,关掉窗口,出来之后一定不要忘记了点击 Resolved!!!

这样就是解决了一个文件的冲突,然后继续点击 Edit conflict ,继续解决其他冲突!直至没有冲突.

时间: 2024-12-28 23:29:35

版本控制SVN的使用笔记的相关文章

【版本控制】git学习笔记(二)

关于git的基本使用请阅读上篇博文内容,[版本控制]git学习笔记(一). 1.远程仓库 Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上.怎么分布呢?最早,肯定只有一台机器有一个原始版本库,此后,别的机器可以"克隆"这个原始版本库,而且每台机器的版本库其实都是一样的,并没有主次之分. 你肯定会想,至少需要两台机器才能玩远程库不是?但是我只有一台电脑,怎么玩? 其实一台电脑上也是可以克隆多个版本库的,只要不在同一个目录下.不过,现实生活中是不会有人这么傻的在一台电脑

lzugis—搭建属于自己的小型的版本控制SVN

对于不了解SVN的同志们可以参考下"mh942408056"的这篇博文,SVN简介,链接地址为:http://blog.csdn.net/mh942408056/article/details/7629036 本文讲述的是如何应用VISUAL SVN SERVER和Dreamweaver CS6搭建自己的程序备份与版本控制. 首先,得下载安装这两个软件.你可以从VISUAL SVN SERVER的官网上获取到VISUAL SVN SERVER的安装包,VISUAL SVN SERVER

iOS开发——开发实战篇&版本控制SVN和Git简单实战总结

版本控制SVN和Git简单实战总结 如果你对iOS开发中的版本控制还不了解那么你可以先看看这篇(大致看一遍就ok) 关于版本控制使用起来并不难,但是可能你会遇到这样问题! 学了这么多命令,感觉自己都知道,而且基本上都能敲出一二,但是就是不轻松公司实际开发中到底要怎么用,或者我该怎么下手,下面我们就来看看我们到了公司之后首先要做的,和之后经常要做的一些事情(命令太多没必要去记,常用的也就那么几个). 首先,你必须先知道,在天朝,SVN目前任是主流,但是又不的不会(这里具体原因我就不多说了)! 好了

iOS开发——开发实战篇&版本控制SVN和Git使用详解

版本控制SVN和Git使用详解 公司的实际开发中,在天朝使用较多的还是SVN,因为SVN是集中式的,在天朝上班你们都懂的! -----------------svn----------------- 一:最常用基本步骤--- 下载(完整下载,第一次),将服务器的项目下载到本地开始开发 svn checkout ip —uaerbane=? —password=?     //这里需要add 简:co 更新仓库,服务器项目有变动的时候需要更新到本地,以免错误或者冲突 svn updata    

Eclipse SVN 安装使用笔记

1. 下载SVN 插件 打开 Eclipse , 菜单栏 Help ->  Install New Software 在 Work with 这里添加网址 : http://subclipse.tigris.org/update_1.8.x/ 回车后即会出现如下两个选项,全部勾选 一路next , 到安装完毕,中间会弹出个警告的, 不用管它,点击 " ok " 就行继续安装. 安装完成后,重启Eclipse  . 2. 检查是否安装SVN 成功 打开 菜单栏 Window -&g

版本控制Git实际开发笔记

这里会把自己实际工作当中用到的git操作记录下来,供自己学习: ①新建分支: 在新版本要开发时,会基于最新版本新建一个分支,创建步骤如下: 新建本地分支[注意:这时只存在于本地,远程仓库还没有生成]: 然后切换到新建的本地分支: [说明]:以上两部操作可以合成一个命令:git checkout -b developer_V1.3.0 最后push到远程: 最后去网页中就能看到远程新建了这个分支了: ②删除远程分支: git branch -r -d origin/branch-namegit p

个人环境搭建——版本控制SVN

版本控制SVN SVN服务器配置: 第一部分:svn服务器搭建(主要是四步走) 参考:http://www.son1c.cn/show/920.html 一,安装Subversion sudo apt-get install subversion 二,创建版本库 2.添加svn管理用户及subversion组 cd /home/username mkdir myproject svnserve -d -r /home/username         (第一步:先启服务器) svnadmin c

win下svn常用操作笔记

svn基本命令 checkout 检出 把服务器代码下载到本地一份update 更新 把服务器上的最新代码更新到本地commit 提交 把本地代码提交到服务器上 win下svn的客户端工具TortoiseSVN 一.创建一个仓库 1.在E盘新建一个空目录test2.进入这个目录,右键选择TortoiseSVN->Create repository here(在此创建版本库) 二.我们在检出该仓库 1.右键选择Svn Checkout(SVN检出)2.输入file:///E:/test(如果是远程

【版本控制】git学习笔记(一)

1. 集中式vs分布式 --Linus一直痛恨的CVS及SVN都是集中式的版本控制系统,而Git是分布式版本控制系统,集中式和分布式版本控制系统有什么区别呢? 先说集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器.中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆. 集中式版本控制系统最大的毛病就是必须联网才能工作,如