git patch 使用
使用git的时候,需要删除几个id,会对到之前的代码,但又想保留现在的代码,以便后面从新合并,所以就将现在的代码打包成patch,留到下次合并。
参考链接
http://www.jianshu.com/p/e5d801b936b6
http://www.cnblogs.com/y041039/articles/2411600.html
生成patch
可以用git diff命令或者git format-patch生成patch。
git format-patch
git format-patch <id>:从id这个版本到现在的patch。
如果有多个id的log信息,那么就会生成多个patch文件。
git patch命令生成的patch是根据时间节点来的,而且在打patch的时候,一个patch对应一个时间节点。
使用git log查看id信息。
git format-patch HEAD^ # 最近的1次commit的patch
git format-patch HEAD^^ # 最近的2次commit的patch
git format-patch HEAD^^^ # 最近的3次commit的patch
git format-patch HEAD^^^^ # 最近的4次commit的patch
git diff
git diff命令不管有几个时间节点,都只会生成一个patch文件。
git diff <id1> <id2> > file.patch
旧的id1在前。
使用patch
先检查patch文件:git apply --stat newpatch.patch
检查能否应用成功:git apply --check newpatch.patch
使用git am会有patch里面的log信息,包括comment等。
打补丁
git am --signoff < newpatch.patch 或者 git am --s < newpatch.patch
git apply newpatch.patch
使用git apply 命令打入patch就不会记录commit的记录,而使用git am的记录就会有记录。
patch失败
先检查patch文件:git apply --stat newpatch.patch
检查能否应用成功:git apply --check newpatch.patch
如果不成功,我的解决方法:
git am newpatch.patch
运行这条命令之后,是不会打patch,因为前面的git apply --check已经检查出不成功,git am也会进行检查,不成功就不会打patch。但是会进入git am的操作。
git apply --reject newpatch.patch 这条命令会将可以打的patch打上,然后不能打patch的文件在对应的目录生成.rej文件。对比rej文件,手动更改patch。
git status查看当前状态。
当前不在任何分支上。
您正处于 am 操作过程中。
(解决冲突,然后运行 "git am --continue")
(使用 "git am --skip" 跳过此补丁)
(使用 "git am --abort" 恢复原有分支)
尚未暂存以备提交的变更:
(使用 "git add <文件>..." 更新要提交的内容)
(使用 "git checkout -- <文件>..." 丢弃工作区的改动)
修改: CORE/MAC/src/pe/lim/limSendManagementFrames.c
未跟踪的文件:
(使用 "git add <文件>..." 以包含要提交的内容)
CORE/MAC/src/pe/lim/limSendManagementFrames.c.rej
然后git add将更改的文件加入stage,并将.rej文件删除。
最后使用
git am --continue.这样patch就成功打入了,而且也会记录里面的commit信息。
Tony Liu
2017-12-20
git patch 使用的更多相关文章
- I.MX6 git patch
/********************************************************************** * I.MX6 git patch * 说明: * 之前 ...
- linux git patch 和patch以及git diff 命令
1.git log 查看commit id,修改前为id1,修改后id2 2.根据id1到id2有几次提交来生成几个patch,否则的话会根据所有节点生成很多patch 比如: commit id2 ...
- git patch生成方法
先把改动commit掉,然后生产改动patch给提交代码的同事,详细操作过程例如以下: 改动代码的同事: git format-patch al821_xxx origin/al821_xxx 会生成 ...
- git patch
http://www.cnblogs.com/y041039/articles/2411600.html
- git apply、git am打补丁.diff 和 .patch【转】
本文转载自:https://www.jianshu.com/p/e5d801b936b6 前提: 生成patch: git format-patch -M master 生成指定patch,0163b ...
- git命令详解(转)
Git使用 git branch 查看本地所有分支 git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支 git branch -r 查看远程所有 ...
- git备忘录
1.git: patch does not apply git apply --ignore-space-change --ignore-whitespace mychanges.patch 2.Ge ...
- Git 操作常用命令
Git使用 1. git pull 更新服务器代码到本地a). git pull origin master是将origin这个版本库的代码更新到本地的master主分支 2. git push ...
- 【转】git命令
Git使用 1. git pull 更新服务器代码到本地a). git pull origin master是将origin这个版本库的代码更新到本地的master主分支 2. git push ...
随机推荐
- Spring Boot 中使用 Swagger2 构建强大的 RESTful API 文档
项目现状:由于前后端分离,没有很好的前后端合作工具. 由于接口众多,并且细节复杂(需要考虑不同的HTTP请求类型.HTTP头部信息.HTTP请求内容等),高质量地创建这份文档本身就是件非常吃力的事,下 ...
- 什么是UML?分哪两类?
统一建模语言(UML是 Unified Modeling Language的缩写)是用来对软件密集系统进行可视化建模的一种语言.UML为面向对象开发系统的产品进行说明.可视化.和编制文档的一种标准语言 ...
- 菜鸟学SSH(十四)——Spring容器AOP的实现原理——动态代理
之前写了一篇关于IOC的博客——<Spring容器IOC解析及简单实现>,今天再来聊聊AOP.大家都知道Spring的两大特性是IOC和AOP,换句话说,容器的两大特性就是IOC和AOP. ...
- [Windows Azure] How to use the Windows Azure Blob Storage Service in .NET
How to use the Windows Azure Blob Storage Service in .NET version 1.7 version 2.0 This guide will de ...
- 【Android】事件输入系统-代码层次解读
本文基于Android-4.0 理论层次解读 请看:www.cnblogs.com/lcw/p/3373214.html 如何管理各种驱动设备 在理论中谈到EventHub,这个一看就是一个做实事的, ...
- Spring Boot 中使用WebJars
WebJars能使Maven的依赖管理支持OSS的JavaScript库/CSS库,比如jQuery.Bootstrap等: WebJars是将Web前端Javascript和CSS等资源打包成Jav ...
- js实现类似微信网页版在可编辑的div中粘贴内容时过滤剪贴板的内容,光标始终在粘贴内容后面,以及将光标定位到最后的方法
过滤剪贴板内容以及定位可编辑div光标的方法: <!DOCTYPE html><html lang="en"><head> <meta ...
- LeetCode: Balanced Binary Tree 解题报告
Balanced Binary Tree Given a binary tree, determine if it is height-balanced. For this problem, a he ...
- 【FindReport】图表快速部署开发
在线帮助文档:http://help.finereport.com/ 开发部署环境:Java Tomcat 数据可视化工具 大屏动态显示
- MAMP和WAMP搭建Web环境,数据库,数据分布可视化
MAMP和WAMP搭建Web环境,数据库,数据分布可视化 1. 数据库 用MAMP和WAMP搭建Web环境,数据分布可视化 Web环境Web服务器:Apache.Nginx,处理Web请求数据库:My ...