一  名词解释

svn一般包括      branch  每个branch版本都要生成对应的tag.例如 branch版本号为1.0.0,那么提交后生成的tag版本号为1.0.0.0;当branch修复bug提交后,tag的版本号为1.0.0.1

trunk    trunk一直往前走,不会回滚

tag      供测试使用

branch 自己的分支

milestone 上线使用

二  一般步骤

1  下载

使用 svn co把代码下载下来

使用svn copy 在svn上建立branch目录

使用svn switch 把本地的trunk映射到svn 的brach目录

2 开发

在trunk下开发,在开发过程中不段的把程序svn ci 提交。

3 提交

开发完毕。

新下载一个代码,svn merge  trunk 和  branch生成tag

三 实例说明

1   创建branch. 从trunk中获取最新的代码,创建一个自己的branch,进行开发(当有branch后就不需要再打branch了,每天更新即可)

                   (1)svn copy ​svn://utils/trunk ​svn://utils/branches/branch_xiaoming

                    (2)checkout项目代码, svn checkout ​svn://utils/





2   开发. 得到branch后,如何开发?

            (1)在本地的trunk目录下执行svn switch ​svn://utils/branches/branch_xiaoming, 如果不用switch将无法共享编译环境。

             (2)执行svn info就会发现已经显示在branch下边了,本地目录还是trunk,这个时候的修改提交都是提交到自己的branch

             (3) 查看branch 从trunk copy 出来的时间日志,找到版本号:svn log --stop-on-copy

             (4)定期从trunk merge 到 branch代码, svn merge ​svn://utils/trunk@478 ​svn://utils/trunk   (这一步其实直接提交就行了把?????)

             (5)最终svn ci到branch中。在提交代码前,一定要确认是在trunk下边还是branch下边

3  打tag.   进行开发、自测,自测通过后打tag提测 

                打tag之前应该:(1)

                (1)svn copy ​​svn://utils/branches/branch_xiaoming ​svn://utils/tags/tag_2.1.2

                (2)注:版本号命名参照版本号命名规范

4  merge到trunk.    测试通过后,merge到trunk,在merge的时候一定要update一下trunk,得到最新的代码。以免把别人的修改给污染了。如果你和别人开发的功能有冲突,那么在merge时小心一些,最好和对方一起确认一下一般就可以了,进行简单的回归测试。(第一种方法:svn的branch merge到svn的trunk上。比较危险?

第二种方法:下载新的代码,然后本地merge branch和trunk 到trunk中,之后再提交)

四 图示

branch

/           |

/             |(1)每天merge trunk到branch

/               |

2)开发结束自测后打tag     trunk

\     /        |

/  \         |3)tag经测试人员测试后,生成trunk

/          \      |

4)trunk 中打milestone     tags(供测试使用)

\                   |

\                |

\            |

milestone(上线版本)

SVN简单流程---以公司的使用方法为例的更多相关文章

  1. SVN简单流程总结

    1   创建仓库 2   启动svn服务器 svnserve -d -r 仓库地址(如:D:\SVN\repoDemo1) 3   新的用户第一次与服务器交互时,需要使用checkout将仓库检出到本 ...

  2. 【转】用CornerStone配置SVN,HTTP及svn简单使用说明

    已经安装了的小伙伴请直接看三步骤 一.下载地址 CornerStoneV2.6:http://pan.baidu.com/s/1qWEsEbM密码:www.macx.cn 二.安装破解方法 1.安装之 ...

  3. 用CornerStone配置SVN,HTTP及svn简单使用说明

    转载 http://my.oschina.net/joanfen/blog/194491 一.下载地址 CornerStoneV2.6:http://pan.baidu.com/s/1qWEsEbM密 ...

  4. ETL流程概述及常用实现方法

    ETL流程概述及常用实现方法 http://blog.csdn.net/btkuangxp/article/details/48224187 目录(?)[-] 1抽取作业 1手工开发抽取作业时候的常用 ...

  5. CornerStone配置SVN,HTTP及SVN简单使用说明

    本文转载至 http://blog.csdn.net/allison162004/article/details/38796857 已经安装了的小伙伴请直接看三步骤 一.下载地址 CornerSton ...

  6. git分布式版本控制系统权威指南学习笔记(一):配置文件、简单流程和小问题

    文章目录 git配置文件简介 git config各种命令 配置级别: 用户信息 文本编辑器 差异分析工具 配置命令别名 公钥 git协同流程 简单流程 初始化版本库 提交至缓存区 查看状态 提交分支 ...

  7. MVC学习一:MVC简单流程

    MVC学习一:MVC初次接触 1.MVC简单流程 1.1.服务器接收客户端请求后,解析URL(根据 路由表里配置的URL来分析 类名(控制器名)和方法名)根据请求的类名,创建对应的控制器类对象,并调用 ...

  8. django入门 -- 简单流程

    django入门 -- 简单流程 简介 通过简单示例,使用django完成基本流程的开发,学习django的主要的知识点,在后续课程中会逐个知识点进行深入讲解 以“图书-英雄”管理为示例 主要知识点介 ...

  9. 从svn资源库目录checkout出maven项目方法

    从svn资源库目录checkout出maven项目方法,如下图所示:

随机推荐

  1. UIWebView & javascript

    http://blog.163.com/m_note/blog/static/208197045201293015844274/ UIWebView是IOS SDK中渲染网面的控件,在显示网页的时候, ...

  2. HDU1879--继续畅通工程(最小生成树)

    Problem Description 省政府"畅通工程"的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).现得到城镇道路统计 ...

  3. http://www.iteye.com/job/topic/1133159

    Lucene 的索引体系是一个写独占,读共享的结构,这意味着,我们在使用多线程进行添加索引时,性能并不会得到明显的提升,所以任何时刻只能有一个线程对索引进行写 入操作,而保障这个操作的安全性则是来自于 ...

  4. equal与==区别

    对于String中的“equal方法”和“==”一直有点混肴,今天重新看了一下他们两点的区别,记录下来让自己以后不在忘记! 先说“==”: “==”是用来比较两个String对象在内存中的存放地址是否 ...

  5. 转: JMeter技巧集锦

    from:http://java.chinaitlab.com/tools/355421.html JMeter 是一个流行的用于负载测试的开源工具, 具有许多有用的功能元件,如线程组(thread ...

  6. ajax请求dotnet webservice格式

    $.ajax({ type: "post", url: "your_webservice.asmx/you_method", contentType: &quo ...

  7. Java实现随意切换VPN改变上网地区

    http://www.jb51.net/article/69267.htm 这篇文章主要介绍了Java实现随意切换VPN改变上网地区,本文直接给出实例代码,需要的朋友可以参考下 在很多情况下,有些网络 ...

  8. listview设置条目点击的时候不变色(让状态选择器不起作用)

    未设置前的效果如下图: 很明显,“酷狗音乐”那个条目被点击的时候,条目背景变为蓝色,怎么去掉这个颜色呢? java代码可以这么写: listView.setSelector(new ColorDraw ...

  9. BCDedit 研究

    bcdedit的研究 系统引导安装 2009-11-12 22:21:13 阅读13 评论0 字号:大中小 首先说明下引导: 微软在Vista之前的系统,采用的是Ntldr来进行引导系统,使用的是bo ...

  10. C++Builder 中动态数组的使用(转)

    源:http://i.cnblogs.com/EditPosts.aspx?opt=1 和AnsiString类型一样,动态数组是为了和DELPHI中的动态数组相兼容而定义,在BCB中,动态数组是用模 ...