SVN项目管理:分支库与合并库

上周接到PM大人的新任务,给主库做分支。

首先,先来看下SVN默认的三大文件夹,这三个文件夹建完库之后,一般默认会有,但是以前用的时候,还是比较简陋的,几乎都是大家提交到trunk里面,整个开发流程下来,一直用的是这个库。

那么,这三个文件夹都应该用来放什么东西呢?

分支(Branching)

分支起始的时候是主线的一个拷贝,但是其后他将保持独立性,拥有自己的变化。

有时你需要创建一个分支,例如你需要开发一个新功能,但是你又不希望新功能开

发完成之前影响主线的开发。

标记(Tagging)

标记是版本库中一个特定版本的快照。通常当项目进展到里程碑或者你预备发 布

release 版本的时候你需要创建一个标签。 虽然也可以对标记进行 Commit, 但是一般

都不这么做。

合并(Merging)

当分支开发进行到某个特定场景的时候,通常需要将更改合并到主线中。例如,如

果开发的心功能已经稳定,那么分支就可以合并到主干了。

这边的项目是,项目刚上线,但是有很多bug,也有很多新需求,所以,将现在主库中的代码放到了分支一份,然后大家重定位到分支库,修改分支库内容。当测试通过后,再合并到主库中。

如何分支?

在检出的trunk目录下的项目上,选择分支(其实分支和打tag操作是很一样的)。

之后,我们在服务器上看,就会看到branch目录下多出了"分支测试2";

查看版本分支图:

可以看出各个分支版本是从哪个版本分支出去的。

合并分支到trunk?

当我们有的多个分支开发完毕,这是就需要合并回主库。

当选择合并完成之后,发现本地工作副本变为修改过未提交的状态。

此时,我们还有将本地工作副本提交一下,才能真正合并。

其实SVN的管理还是比较集中式的管理,跟现在很多人用的集中式的GIT相比,SVN很少分支。。。N多。。。

最后想说,版本控制不是源码管理。。。。各位开发请自重。。。。

时间: 2024-10-10 11:16:25

SVN项目管理:分支库与合并库的相关文章

SVN建立分支、代码合并以及常用操作

在项目开发的过程中,现在遇到这样一个问题: 现在是9月份,在同一个项目中我要开发A.B两个模块,A模块是11月份上线,B模块是12月份上线,但是SVN上的trunk(主干)上的代码必须是上线的. 假设我可以在9月份完成这两个模块,但是我不能在trunk上开发完这两个模块.因为如果我在trunk上开发完成了这两个模块,等11月份A模块上线时,我怎么保证 我提交的代码只是A模块的呢?并且在我开发这个项目的同时,其他同事也在开发这个项目,这样,整个项目就会乱掉,没办法管理.当然,或许你可以将现在的项目

关于SVN版本分支合并的知识

分支的合并类型 合并的工作是把主干或者分支上合并范围内的所有改动列出,并对比当前工作副本的内容,由合并者手工修改冲突,然后提交到服务器的相应目录里.如果当前工作副本是主干,则合并的范围是分支上的改动,如果工作副本是分支的,则合并范围是主干上的改动,并且一定要注意,合并的起始位置URL一定要和当前的工作副本的URL是相同的. 一.合并一个范围的版本 此类型应用最为广泛,主要是把分支中的修改合并到主干上来.在主干上点击右键选择合并,然后选择合并类型:合并一个范围的版本.合并的源URL填写的是要合并的

SVN创建分支/合并分支/切换分支

SVN创建分支/合并分支/切换分支 转载自:http://www.cnblogs.com/andy2simple/p/5386256.html 在建立项目版本库时,可首先建好项目文件夹,并在其中建立trunk, branches, tags三个空的子目录.这样在trunk中开始进行开发 trunk是主分支,是日常开发进行的地方. branches是分支.一些阶段性的release版本,这些版本是可以继续进行开发和维护的,则放在branches目录中.又比如为不同用户客制化的版本,也可以放在分支中

windows 下svn 创建分支 合并分支 冲突

我用的系统是win7+Subversion 1.7.4.服务器搭建就略过了,我也是从网上找的,基本上就是几个命令吧!我用的CentOs6.5 .网上找了几个命令搭建很快,基本上是: 1.# sudo yum install subversion 2.# sudo mkdir -p /subroot 3.# sudo svnadmin create /subroot 4.# sudo vi /subroot/conf/authz 尾部加 [/]dan=rww=r 5.# sudo vi /subr

SVN建立分支和合并代码

1.SVN建立分支正确SVN服务器上会有两个目录:trunk和branches.trunk目录下面代码就是所谓的主版本,而branches文件夹主要是用来放置分支版本.分支版本是依赖于主版本的,因此建立分支版本时候,必须要在trunk文件夹操作才可以的.下面是推荐的操作步骤:(1)从SVN上checkout Trunk版本下来.如果在本地机器上已有了trunk版本,需要更新一下到最新代码. (2)在本地抓下来的trunk版本的文件上,点击右键,弹出菜单,选中如下菜单项. 弹出如下对话框,按在下面

SVN教程——分支与合并

作者:zhanhailiang 日期:2014-10-17 分支的应用场景 总结一句就是方便并行开发. Subversion has commands to help you maintain parallel branches of your files and directories. It allows you to create branches by copying your data, and remembers that the copies are related to one

svn branch and merge(svn切换分支和合并)详解

下文的实践主要是参考了TortoiseSVN的帮助文档和Subversion的在线文档,Subversion的在线文档:http://svnbook.red-bean.com/en/1.5/svn-book.html 先说说什么是branch.按照Subversion的说法,一个branch是某个development line(通常是主线也即trunk)的一个拷贝,见下图: branch存在的意义在于,在不干扰trunk的情况下,和trunk并行开发,待开发结束后合并回trunk中,在bran

svn 分支创建和合并

参考资料: 1.svn merge和branch http://www.cnblogs.com/cxd4321/archive/2012/07/12/2588110.html 2. SVN merge的主干,分支的相互合并操作 3.  解决版本冲突问题的方法-分支与合并 http://www.docin.com/p-542804194.html?qq-pf-to=pcqq.discussion

[svn] linux命令——svn分支创建、合并

一.创建分支 1,创建一个分支 svn copy svn://xx.com/repo/trunk svn://xx.com/repo/branches/TRY-something -m 'make branches TRY-something' 2,把工作目录转到分支 svn switch svn://xx.com/repo/branches/TRY-something 当然,也可以再转到主干svn switch svn://xx.com/repo/trunk 二.合并一个分支到主干 1, 查找