git diff 生成patch, git apply patch 打补丁方法说明,以及分支管理的简单操作。
git diff 简易操作说明
先git log 查看commit ID, 记录你想要打的补丁的ID
比如说:
git log
commit 4ff35d800fa62123a28b7bda2a04e749addf1918
Author: chenfulin5 <chenfulin5@gmail.com>
Date: Tue Dec 20 17:37:09 2016 +0800
[I2C EEPROM]
commit acb8cd154cecf20894ae25fc3787d6b6ba9b32ea
Author: chenfulin5 <chenfulin5@gmail.com>
Date: Mon Dec 19 18:45:03 2016 +0800
[I2C0 AT24] add at24 eeprom
那么你就可以运行如下命令进行生成patch
git diff acb8cd15 4ff35d80 > patch
现在已经生成了一个patch, 那么可以使用 git apply 进行打补丁。
git branch
不过我们现在可以建一个分支进行试验。
git branch new_branch
git branch
可以看到多了一个分支。
切换分支使用如下命令:
git checkout new_branch
也有快捷命令直接创建分支并切换:
git checkout -b test_branch
git branch 可以看到你已经切换到了test_branch 分支上面。
删除分支:
git branch -D test_branch
git branch
可以看到已经将 test_branch分支删除掉。
重命名分支:
git branch -m new_branch chen_new_branch
git branch
可以看到new_branch 已经改名为chen_new_branch分支
分支合并:
现在我假定你还有两个分支:
一个master主分支以及一个chen_new_branch分支。
git checkout chen_new_branch
确定你现在在这个分支上面
提交一个改动:
echo "test" >> test
git add .
git commit -m "This is test"
git diff chen_new_branch master
就可以看到不同
也可以git log master
git log chen_new_branch
查看他们两个分支的commit 有什么不同。
然后跳到master分支:
git checkout master
git branch
确认你已经在master 分支上面。
git merge chen_new_branch
合并。
git apply
回到我们刚才利用git diff HARD HARD > patch 生成的补丁文件。
将这个补丁文件拷贝过来
git checkout -b patch_test
git apply patch
git status
看到状态后你知道你要做相关的动作了吗?
OK你做吧
最后:
git commit -m "test"
你是不是想这不是试验,那么
git checkout master
git merge patch_test 合并分支。OK
git diff 生成patch, git apply patch 打补丁方法说明,以及分支管理的简单操作。的更多相关文章
- 版本控制工具(下)——Git的远程仓库、分支管理与其它操作
预备知识: SSH协议参考资料:http://blog.csdn.net/vevenlcf/article/details/43273405 图解公钥和私钥:http://blog.csdn.net/ ...
- Git分支管理及常见操作
众所周知,使用Git分支,我们可以从开发主线上分离开来,然后在不影响主线的同时继续工作. 既然要使用Git分支,这里就涉及到Git分支的管理及常见操作,如列出分支,分支的创建,分支的删除,分支的合并等 ...
- Git:六、分支管理(指针操作)
1.基本操作 1)创建分支 git branch <name> 2)切换分支 git checkout <name> 1)&2)创建并切换分支 git checkout ...
- git diff patch方法
UNIX世界的软件开发大多都是协作式的,因此,Patch(补丁)是一个相当重要的东西,因为几乎所有的大型UNIX项目的普通贡献者,都是通过 Patch来提交代码的.作为最重要的开源项目之一,Linux ...
- git 生成patch 和打入patch
转载:https://blog.csdn.net/liuhaomatou/article/details/54410361 平时我们在使用git 管理项目的时候,会遇到这样一种情况,那就是客户使用gi ...
- 如何使用git 生成patch 和打入patch【转】
本文转载自:http://blog.csdn.net/liuhaomatou/article/details/54410361 平时我们在使用git 管理项目的时候,会遇到这样一种情况,那就是客户使用 ...
- 如何使用git 生成patch 和打入patch 标签: gitpatch【转】
本文转载自:http://blog.csdn.net/liuhaomatou/article/details/54410361 平时我们在使用git 管理项目的时候,会遇到这样一种情况,那就是客户使用 ...
- git diff 理解
0. 理解 git diff 返回信息 1. 命令 $ git diff README.md 2. 返回信息,注解 diff --git a/README.md b/README.md ## 1. 表 ...
- git diff 结果分析
git diff 的5个使用场景: 1.staging area和working area的文件 (无其他参数时) git diff 2.master分支和working area的文件 (用ma ...
随机推荐
- 使用WCF传输DataTable:DataTable和Xml格式的字符串相互转换(C#)
背景:项目中要用到客户端向服务端传数据,使用WCF,绑定webHttpBinding,做了一个小例子. 业务逻辑简介:客户端在a表中添加了几条数据,从SQL Server数据库直接取出新添加的数据(D ...
- od 查看特殊格式的文件内容
用户通常使用od命令查看特殊格式的文件内容.通过指定该命令的不同选项可以以十进制.八进制.十六进制和ASCII码来显示文件. 语法: od [选项] 文件- 命令中各选项的含义: - A 指定地址基数 ...
- mybatis多对一关联
mybatis多对一关联查询实现 1.定义实体 定义实体的时候需要注意,若是双向关联,就是说双方的属性中都含有对方对象作为域属性出现, 那么在写toString()方法时需要注意,只让某一方输出即可, ...
- 【原】iOS 同时重写setter和getter时候报错:Use of undeclared identifier '_name';did you mean 'name'
写了那么多的代码了,平时也没有怎么注意会报这个错误,因为平时都很少同时重写setter和getter方法,一般的话,我们大概都是使用懒加载方法,然后重写getter方法,做一个非空判断.然后有时候根据 ...
- jQuery Mockjax插件使用心得
最近指导前端攻城狮在后台代码没有完成前测试自己写的后台代码,第一个版本是让他直接创建一个data.json静态数据,然后再ajax调用,缺点非常明显,首先需要localhost的支持,其次是能测的功能 ...
- React数据流和组件间的沟通总结
今天来给大家总结下React的单向数据流与组件间的沟通. 首先,我认为使用React的最大好处在于:功能组件化,遵守前端可维护的原则. 先介绍单向数据流吧. React单向数据流: React是单向数 ...
- Java集合框架List,Map,Set等全面介绍
Java集合框架的基本接口/类层次结构: java.util.Collection [I]+--java.util.List [I] +--java.util.ArrayList [C] +- ...
- 使用App.config管理数据库连接
程序的数据库连接字符串可以保持在程序的配置文件App.config中,便于管理. 将配置文件添加至解决方案: 添加连接信息: <?xml version="1.0"?> ...
- 标题栏显示icon
<link rel="shortcut icon" href="/favicon2.ico"/><link rel="bookmar ...
- spring mvc重定向方法
一.不带参数,直接重定向到另一个地址: 返回String直接跳转,如: @RequestMapping(value = "/filehandle") public String u ...