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. 腾讯的一道JavaScript面试题

    //题目:分别弹出什么内容? <!-- function test(){ this.a = 1; alert(this); //[object Window] } test(); var t = ...

  2. Xcode6如何自己添加pch文件?

    1.先自己添加.pch文件(右击new file) 2.最重要的一步,如何让工程识别! 在Build settings里搜索Prefix Header, 第一个箭头选择yes,第二箭头把你的pch的路 ...

  3. JavaScript 开发的45个经典技巧

    JavaScript是一个绝冠全球的编程语言,可用于Web开发.移动应用开发(PhoneGap.Appcelerator).服务器端开发(Node.js和Wakanda)等等.JavaScript还是 ...

  4. 计算机网络(11)-----TCP连接的建立和释放

    TCP连接的建立和释放 概述 TCP运输连接的建立和释放是每一次面向连接的通信中必不可少的过程,运输连接有三个阶段:连接建立,数据传送和连接释放. TCP连接的建立 如图所示,假定A主机是客户端程序, ...

  5. 嵌入式Linux的调试技术

    本节我们研究嵌入式Linux的调试技术,对于复杂的Linux驱动及HAL等程序库,需要使用各种方法对其进行调试.刚开始讲了打印内核调试信息:printk,这个函数的用法与printf函数类似,只不过p ...

  6. React之Froms

    In React, a <textarea> uses a value attribute instead. This way, a form using a <textarea&g ...

  7. Android 振动器

    今天介绍一下Android的振动器Vibrator,有三个方法来控制手机振动: 1.void vibrate(long milliseconds):控制手机振动milliseconds毫秒. 2.vo ...

  8. byte数据的常用操作函数[转发]

    /// <summary> /// 本类提供了对byte数据的常用操作函数 /// </summary> public class ByteUtil { ','A','B',' ...

  9. js①

    JavaScript的引入方式 直接在script标签内部书写代码 ```html <!DOCTYPE html> ``` 2. 通过script标签的src属性,引入外部的JavaScr ...

  10. NSLOG打印不全的问题

    #ifdef DEBUG #define NSLog(FORMAT, ...) fprintf(stderr, "%s:%zd\t%s\n", [[[NSString string ...