Git为我们提供了Patch功能,Patch中包含了源码更改的描述,能够应用于其他Eclipse工作空间或者Git仓库。也就是说,可以将当前提交导出至其他分支或者项目中。

 

举个例子,项目A、B中使用了相同的JSP代码:ShowHello.jsp,当在A项目中修改了ShowHello.jsp,那么需要将这个修改复制到B项目,如果只是一个文件修改还好说,如果是多个目录下多个文件的修改就麻烦了。这是时候我们就可以用Patch,将A项目的修改同步到B项目。

 

下面说一下操作流程。

 

  1. A项目中修改完成后,进行提交(commit)和上传(push),在历史中(项目右击→Team→Show In History)可以看到本次提交与提交的文件:

  2. 图中下方方框中的三个文件就是我们修改的文件,上方方框中为我们的提交,右击选择Creat Patch…:

  3. 弹出如下窗口,在窗口中选择存储位置和文件名,默认文件名为此次commit的内容:

  4. 点击Next,到一下个页面:

  5. 按默认就可以,点击Finnish。此时在你指定的位置就生成了Patch文件。此时在项目B上右击选择Team→Apply Patch…,在弹出界面上选择刚刚生成的Patch文件,点击Next:

  6. 选择要打Patch的项目,点击Next:

  7. 重点来了,如果是是不同的项目在Patch options的Ignore leading path name segments这里要选成1(默认为0),选完之后下面框的图标中出现蓝色的箭头,双击每个文件都可以看到文本对比(Text Compare),可以看看代码是不是自己要的。最后Commit and push就可以了。

     

相对于Git,Egit提供的功能还是比较少的,但是够用。如果想对git的Patch有深入的了解,请移步老Z的博客-Git的Patch功能

 

如果在Apply Patch时中文变为乱码,则需要将生产的Patch文件用记事本打开另存为编码方式为ANSI的文件。

Egit Patch的更多相关文章

  1. Egit Patch

    Git为我们提供了Patch功能,Patch中包含了源码更改的描述,能够应用于其他Eclipse工作空间或者Git仓库.也就是说,可以将当前提交导出至其他分支或者项目中. 举个例子,项目A.B中使用了 ...

  2. [转]Patch文件结构详解

    N久不来 于是不知道扔在哪儿于是放这里先 如果你觉得碍事的话 帮我扔到合适的版块去.. 导读这是一篇说明文 它介绍了标准冒险岛更新文件(*.patch;*.exe)的格式文章的最后附了一段C#的参考代 ...

  3. 【腾讯Bugly干货分享】Android Patch 方案与持续交付

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57a31921ac3a1fb613dd40f3 Android 不仅系统版本众多 ...

  4. [译] 在Web API 2 中实现带JSON的Patch请求

    原文链接:The Patch Verb in Web API 2 with JSON 我想在.NET4.6 Web API 2 项目中使用Patch更新一个大对象中的某个字断,这才意识到我以前都没有用 ...

  5. Monkey Patch/Monkey Testing/Duck Typing/Duck Test

    Monkey Patch Monkey Testing Duck Typing Duck Test

  6. diff生成补丁与patch打补丁

    1.使用diff生成补丁: diff是Linux下的文件比较命令,参数这里就不说了,直接man一下就行了,不仅可以比较文件,也可以比较两个目录,并且可以将不同之处生成补丁文件,其实就是一种打补丁的命令 ...

  7. TeamViewer 12.0.71503 Patch By.Sound

    TeamViewer - the All-In-One Software for Remote Support and Online Meetings - Remote control any com ...

  8. iOS动态部署之RSA加密传输Patch补丁

    概要:这一篇博客主要说明下iOS客户端动态部署方案中,patch(补丁)是如何比较安全的加载到客户端中. 在整个过程中,需要使用RSA来加密(你可以选择其它的非对称加密算法),MD5来做校验(同样,你 ...

  9. git diff 生成patch, git apply patch 打补丁方法说明,以及分支管理的简单操作。

    git diff 简易操作说明 先git log 查看commit ID, 记录你想要打的补丁的ID 比如说: git log commit 4ff35d800fa62123a28b7bda2a04e ...

随机推荐

  1. python网络编程【二】(使用TCP)

    1.建立socket 对于一个客户端程序来说,建立一个socket需要两个步骤.首先,您需要建立一个实际的socket对象.其次,您需要把它连接到远程服务器上. 在建立socket对象的时候,您需要告 ...

  2. 计算机网络(12)-----HTTP协议详解

    HTTP协议详解 http请求 http请求由三部分组成,分别是:请求行.消息报头.请求正文 (1)请求行 请求行以一个方法符号开头,以空格分开,后面跟着请求的URI和协议的版本,格式如下:Metho ...

  3. Spring IOC 依赖注入的两种方式XML和注解

    依赖注入的原理 依赖注入的方式---XML配置 依赖注入的方式---注解的方式 Spring 它的核心就是IOC和AOP.而IOC中实现Bean注入的实现方式之一就是DI(依赖注入). 一 DI的原理 ...

  4. golang实现冒泡排序

    //BubbleSort.go package main import "fmt" func main() { , , , , , , , , ,} fmt.Println(val ...

  5. iOS autolayout 代码,自定义间距

    最近换了新的项目组,然后这个项目组是纯代码,然后我就开始试着用代码去写适配,结果学艺不精,遇到个闪退,搜了一下发现几乎没有人遇到这个问题,后来发现其实就是我自己太粗心了. 我是这样写的 NSArray ...

  6. js中(function(){…})()立即执行函数写法理解

    文章摘自https://my.oschina.net/u/2331760/blog/468672?p={{currentPage+1}} 摘要: javascript和其他编程语言相比比较随意,所以j ...

  7. HTMlhleper

    @{ ViewBag.Title = "Index";} <h2>Index</h2> <div> @{ int id=12121; var I ...

  8. 中小网站如何使用谷歌Adsence国际化优势赚钱?

    劲捷电子信息有限公司是一家拿了美国风险投资的互联网公司.他的创办人祁劲松2005年加入AdSense,迄今收获颇丰,为此他还写了一本 <Google AdSense实战宝典>.在祁劲松看来 ...

  9. python实现的视频下载工具you-get,支持多个国内外主流视频平台

    RT,you-get 是一个视频离线下载工具, https://github.com/soimort/you-get 另一个同类工具 youtube-dl 也是python 实现,虽然名为 youtu ...

  10. 【python】属性

    在python中,一切皆是对象(object),对象拥有很多属性(arrtribute) 属性分2种 类属性(class attribute):类自身定义or继承 对象属性(object attrib ...