转: svn合并分支到trunk

http://sepcot.com/blog/2007/04/svn-merge-branch-trunk

SVN: Merging a Branch into Trunk

This is more for my benefit than anything else, but someone might find this useful.

Recently at work, I have taken on more responsibilities. Part of that includes branch control over a few web sites I work on. It took me a while to figure out how to manage everything properly and most of the stuff I found on the web wasn’t much help so I will explain it here.

The source control program I am using is SVN and the source code is stored on a server with SSH access.

MERGE A BRANCH INTO TRUNK

  1. Check out a copy of trunk:

    svn co svn+ssh://server/path/to/trunk
  2. Check out a copy of the branch you are going to merge:
    svn co svn+ssh://server/path/to/branch/myBranch
  3. Change your current working directory to “myBranch”
  4. Find the revision “myBranch” began at:
    svn log --stop-on-copy

    This should display back to you the changes that have been made back to the point the branch was cut. Remember that number (should be rXXXX, where XXXX is the revision number).

  5. Change your current working directory to trunk # Perform an SVN update:
    svn up

    This will update your copy of trunk to the most recent version, and tell you the revision you are at. Make note of that number as well (should say “At revision YYYY” where YYYY is the second number you need to remember).

  6. Now we can perform an SVN merge:
    svn merge -rXXXX:YYYY svn+ssh://server/path/to/branch/myBranch

    This will put all updates into your current working directory for trunk.

  7. Resolve any conflicts that arose during the merge
  8. Check in the results:
    svn ci -m "MERGE myProject myBranch [XXXX]:[YYYY] into trunk"

That is it. You have now merged “myBranch” with trunk.

Updated: June 18th, 2008

Steps 2-4 can be replaced by a remote log lookup:

svn log --stop-on-copy svn+ssh://server/path/to/branch

That is it. You have now merged “myBranch” with trunk.

My thanks to Samuel Wright for bringing that to my attention :-)

BONUS: CUTTING A BRANCH

Cutting a branch is a lot easier than merging a branch. And as an added bonus, I will tell you how.

  1. Perform an SVN copy:

    svn copy svn+ssh://server/path/to/trunk svn+ssh://server/path/to/branch/newBranch -m "Cut branch: newBranch"

That’s all there is to it.

时间: 2024-12-25 12:08:58

转: svn合并分支到trunk的相关文章

SVN合并分支

这篇文章只是介绍的合并分支并未介绍创建分支 1.首先下载主干代码到文件夹: 如图: 2.选中右击     找到"合并"   点击"合并":如图 下文有队这两个按钮的介绍: 3.点击下一步:点击 "..."  选中你要合并的分支地址 在右侧找到你要合并的分支名称  点击确定: 然后点击下一步: 点击测试合并来检测是否有冲突 没有冲突直接点击合并即可合并到主干 合并完成后就可以在主干上看到你分支修改的代码, 在主干点击提交可以完成合并了, 不过在合并

svn打分支和合并操作

1.svn打分支 到trunk里,选择Branch/tag.... 填写分支版本路径 到branch里svn up 一下,就有1.4.0分支了 2.svn合并 到trunk里,选择Merge.. 选择第一个 Merge a rang of revisions. 两者区别: Merge a rang of revisions.:把分支中的修改合并到主干上来 .有冲突会爆出了,可以修改. Merge two different trees.   : 可以选择过去的一个主干版本与分支的某个版本进行合并

把svn中的分支(branch)合并到主分支(trunk)

把svn中的分支(branch)合并到主分支(trunk) 操作步骤 1 branch 和 trunk的代码同步至最新 2 选中trunk项目需要合并的代码(可以项目根目录.也可以是子目录或文件) 3 选择合并操作 ( team-->合并) 4 选择合并一个分支(reintegrate a branch) 5 填写需要合并的分支目录(reintegrate a branch)

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合并与分支

一.           分支与合并的概念: 分支:版本控制系统的一个特性是能够把各种修改分离出来放在开发品的一个分割线上.这条线被称为分支.分支经常被用来试验新的特性,而不会对开发有编译错误的干扰.当新的特性足够稳定之后,开发品的分支就可以混合回主分支里(主干线). 合并:分支用来维护独立的开发支线,在一些阶段,你可能需要将分支上的修改合并到最新版本,或者将最新版本的修改合并到分支. 二.  SVN分支的意义: 简单说,分支就是用于区分开发版本与当前发布版本的. 1. 主干负责新功能的开发 2

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

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

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

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

svn建立分支和svn代码合并的操作方法

首先说下为什么我们需要用到分支-合并.比如项目demo下有两个小组,svn下有一个trunk版.由于客户需求突然变化,导致项目需要做较大改动,此时项目组决定由小组1继续完成原来正进行到一半的工作[某个模块],小组2进行新需求的开发.那么此时,我们就可以为小组2建立一个分支,分支其实就是trunk版[主干线]的一个copy版,不过分支也是具有版本控制功能的,而且是和主干线相互独立的,当然,到最后我们可以通过[合并]功能,将分支合并到trunk上来,从而最后合并为一个项目. 下面是在eclipse下

SVN的分支合并标记

首先说下为什么我们需要用到分支-合并.比如项目demo下有两个小组,svn下有一个trunk版.由于客户需求突然变化,导致项目需要做较大改动,此时项目组决定由小组1继续完成原来正进行到一半的工作[某个模块],小组2进行新需求的开发.那么此时,我们就可以为小组2建立一个分支,分支其实就是trunk版[主干线]的一个copy版,不过分支也是具有版本控制功能的,而且是和主干线相互独立的,当然,到最后我们可以通过[合并]功能,将分支合并到trunk上来,从而最后合并为一个项目. 下面是在eclipse下