现在的位置: 首页 > 综合 > 正文

在同一台机器上打patch的方法

2013年11月27日 ⁄ 综合 ⁄ 共 514字 ⁄ 字号 评论关闭

关键字:SVN、 DIFF、PATCH、多版本、分支管理

在多分支开发中,fix一个bug,需要在多个版本上修改。逐个手动修改的方法存在一个问题:代码合并时手工修改的代码可能会出现冲突。为了减小代码合并同学的工作量,在一个版本上fix一个bug后,可以生成一个patch,然后将这个patch apply到其它分支上。

例如,在merge_rowkey_dev上fix了一个bug,然后需要在dev上同样fix这个bug,做法是:

diff -uN /fullpath/merge_rowkey_dev/filename.cpp  /fullpath/dev/filename.cpp  > patch.file

之所以用fullpath,是为了在patch的时候少点麻烦,不然还要去关心-pN参数中的N,用了全路径后,N=0,并且采取上面的方法,整个过程无需更换目录。

打path的方法如下:

patch -p0 < patch.file  

执行patch命令后,dev/filename.cpp中的bug就也被修复了。

更多打patch的内容参考:http://www.cnblogs.com/cute/archive/2011/04/29/2033011.html

抱歉!评论已关闭.