近期要hadoop2.4关于上面的行hdfs raid,但在此之前hdfs raid如svn 的branch发展,领导人希望patch方式hdfs raid功能进球trunk里面去,这里涉及到svn branch和trunk的合并问题,下面是hdfs raid 打patch的详细过程。

1、保证当前 hdfs raid 的branch分支是clean的。也就是说使用svn status看不到不论什么的本地改动。

2、将trunk中全部的patch打进trunk。并提交这些patch

3、命令行切换到trunk文件夹。运行:

svn merge https://example.com/hadoop-2.4.0/branch/hadoop-2.4.0-hdfs-raid/

将branch分支上的修改merge回trunk下。

当然在merge你也能够指定Branch上那些版本号变更能够合并到trunk中。命令例如以下:

svn merge https://example.com/hadoop-2.4.0/branch/hadoop-2.4.0-hdfs-raid/ r117893:HEAD

以上演示样例中是将hdfs raid branch从版本号117893到当前版本号的全部修改都合并到trunk中。

当然你也能够将trunk中的某些更新合并到hdfs raid branch中,还是相同的方法。

4、假设出现merge冲突则进行解决(http://zccst.iteye.com/blog/1765519)。然后就能够将hdfs
raid branch的代码基于trunk打patch了,命令:

svn diff > hdfs-raid.patch

这样打patch的时候发现仅仅能打hdfs改动部分的代码,而raid部分新加的代码打不进来,须要进行下面操作:

svn add hadoop-tools/hadoop-raid/

运行svn status,发现hadoop-tools/hadoop-raid/target以下的文件也被add了。这部分文件是不须要提交到svn的,须要撤销svn
add,运行下面命令:

svn revert --recursive hadoop-tools/hadoop-raid/target

在运行svn
status,这个时候发现仅仅有须要的文件被add了,然后运行打patch命令:

svn diff > hdfs-raid.patch

这样一来,就把全部的文件都打进了patch。

说明:假设在打patch时出现下面提示:

Hunk #1 succeeded at 1254 (offset 23 lines).
Hunk #2 succeeded at 1794 (offset 23 lines).

能够參考http://blog.csdn.net/longerzone/article/details/16967579进行解决。

參考链接:

http://www.cnblogs.com/huang0925/p/3254243.html

http://zccst.iteye.com/blog/1765519

http://blog.csdn.net/longerzone/article/details/16967579

版权声明:本文博客原创文章,博客,未经同意,不得转载。

SVN在branch兼并和游戏patch(1)的更多相关文章

  1. 版本控制:SVN中Branch/tag的使用 -摘自网络

    在SVN中Branch/tag在一个功能选项中,在使用中也往往产生混淆. 在实现上,branch和tag,对于svn都是使用copy实现的,所以他们在默认的权限上和一般的目录没有区别.至于何时用tag ...

  2. SVN中Branch的创建于合并

    SVN中Branch的创建于合并 在使用源代码版本控制工具时,最佳实践是一直保持一个主干版本.但是为了应付实际开发中的各种情况,适时的开辟一些分支也是很有必要的.比如在持续开发新功能的同时,需要发布一 ...

  3. svn 创建branch merge

    使用TortoiseSVN 创建分支 1.TortoiseSVN(右键)->Repo-browser进入仓库 2.选择需要创建分支的文件->Copy to 3.将新创建branch pat ...

  4. SVN中Branch的创建与合并

    在使用源代码版本控制工具时,最佳实践是一直保持一个主干版本.但是为了应付实际开发中的各种情况,适时的开辟一些分支也是很有必要的.比如在持续开发新功能的同时,需要发布一个新版本,那么就需要从开发主干中建 ...

  5. svn url does not contain valid patch

    想把项目上传到svn上,由于误点击了apply patch.所以出现下面的错误. 正确做法是在项目上右击找到Team----share Project 如图: 点击share project后出现如图 ...

  6. SVN的branch合并到trunk的过程思考

    SVN branch合并到主线的整个过程相对来说还是比较繁琐的,下面一个图揭示了一个大概的过程: 1. 将branch上的代码update到本地. 2.将 trunk上的代码也update到本地. 3 ...

  7. SVN的Branch和Tag管理

    dev:开发主线 branch: 部分特殊客户的定制化版本 tag: 主线的某个发布版本 release: 主线的里程碑式的发布版本(相比上一里程碑版本,改动非常大,并且当前已经很稳定的) 你可以在b ...

  8. 图解SVN的branch合并到trunk的过程

    SVN branch合并到主线的整个过程相对来说还是比较繁琐的,下面一个图揭示了一个大概的过程: 1. 将branch上的代码update到本地. 2.将branch本地的代码commit到branc ...

  9. svn的branch truck tag

    对于branch truck tag一直迷迷糊糊的,想搞明白,但是一直又没来弄明白,最近就用了这种方式来开发 可以我又不是完全了解怎么操作,所以查看了下资料,这个解释得很详细呀,连我都看得懂的东西,真 ...

随机推荐

  1. C++学习笔记33 转换操作符

    有时候,我们要转换为类类型和类类型,同时,这两个类继承关系不存在,这时候我们就需要一些所谓的转换操作符运营商. 一个简单的例子.类别A转换为int种类 #include <iostream> ...

  2. JavaScript获取路径

    JavaScript获取路径 1.设计源代码 <%@ page language="java" import="java.util.*" pageEnco ...

  3. IntelliJ IDEA 问题总结之中的一个 —— jar包、assets、maven、git

    因为工作须要,这几天開始弃用eclipse,换idea.用了几天,idea确实有些地方比較方便.可是麻烦也是不少.并且网上相应的资料并没有eclipse那么多,非常多都是自己琢磨解决的,所以想弄个帖子 ...

  4. Codeforces Round #223 (Div. 2)--A. Sereja and Dima

    Sereja and Dima time limit per test 1 second memory limit per test 256 megabytes input standard inpu ...

  5. ViewData ViewBag ViewModel

    ViewBag 里可以携带dynamic的数据. Model 是从control传过来的模型数据. 我自己感觉ViewBag 可以携带少量的数据,但是我同事喜欢部分页partial 请求,ViewBa ...

  6. 使用Jfree实现吧条形图,java代码

    使用Jfree实现吧条形图,java代码.它可能在生产的报告被常用,之后,主动生成自己的代码,可以随意查看.自由地配置图表的各种性质,为了达到他们的要求和目标 package test1; impor ...

  7. MongoDB:逐渐变得无关紧要

    我与MongoDB的关系可分为三个阶段.对于目前处于第三阶段的我来说,这款产品似乎变得无关紧要了.很快你就会明白为什么我这么说. 阶段一:痴迷 我与MongoDB的第一次接触十分神奇:一个poligl ...

  8. ios 多线程开发(三)Run Loops

    Run loops是线程相关的一些基本东西.一个run loop是一个处理消息的循环.用来处理计划任务或者收到的事件.run loop的作用是在有事做的时候保持线程繁忙,没事的时候让线程挂起. Run ...

  9. cocospods 卡在 Analyzing dependencies

    參考链接:http://www.cocoachina.com/bbs/read.php? tid=193398 关于pod stetup的详解在这里.对于初次使用CocoaPods的同学,即使你不使用 ...

  10. 每天进步一点点——Linux文件锁编程flock

    转载请注明出处:http://blog.csdn.net/cywosp/article/details/30083015 1. 场景概述     在多线程开发中.相互排斥锁能够用于对临界资源的保护,防 ...