随心所欲生成git仓库随意一段commit的专用patch应用小实践
随心所欲生成git仓库随意一段commit的专用patch应用小实践
我们在开发中。时不时的可能要去做一个patch给你的下线,或者你的合作者。在git管理中,我们知道有git format-patch命令,那怎么使用呢?
笔者以下就以实际样例来记录一下这个过程:
/*****************************************************************************************************/
声明:本博内容均由http://blog.csdn.net/edsam49原创。转载请注明出处。谢谢!
/*****************************************************************************************************/ 我们有两个branch。一个是 kk-a20-allwinner是base分支,base这个分支我们产生了一个开发分支a20-kitkat-dev。经过一段时间的开发,我们在开发分支上一家有一些修改了。假如有问题须要别人协查,人家也仅仅有kk-a20-allwinner这个base分支代码。那我们总不能把开发分支的代码打包传给别人吧。
那我们就须要做patch。利用format-patch命令。下图是笔者的操作记录截屏:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZWRzYW00OQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />
产生了多个patch,详细多少个patch就看你基于base分支后你做了多少次git commit,一个commit相应一个patch,然后把这些patch给对方。对方依照patch的顺序从0001開始的patch一个个打上去就能够了,这种话就降低了非常多的传输数据,效率还是高一些。
那以下我就来谈谈,我们怎么做开发分支的一部分的patch,比方就是近期提交的三个commit。操作例如以下:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZWRzYW00OQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />
要基于开发分支先克隆一个branch出来,再回退三个commit,你要做几个commit的patch你就回退几个commit,然后还是利用format-patch来做。
假设要做开发分支中间几个commit的patch,大体方法还是差点儿相同,仅仅只是先退到要做patch的commit位置,再克隆branch,再在克隆分支上回退几个你想做patch的commit,方法还是差点儿相同,活学活用就好了。
随心所欲生成git仓库随意一段commit的专用patch应用小实践的更多相关文章
- Git中如何利用生成SSH个人公钥访问git仓库
Git中如何利用生成SSH个人公钥访问git仓库方法(这里以coding平台为例): 1. 获取 SSH 协议地址 在项目的代码页面点击 SSH 切换到 SSH 协议, 获得访问地址, 请使用这个地址 ...
- svn迁移到git仓库并保留commit历史记录
svn迁移到git仓库并保留commit历史记录 最近在做svn迁移到gitlab,由于之前一直是由svn做版本控制.最简单的方式是将svn的内容export出来,然后添加到gitlab即可.但是,如 ...
- 从Git仓库中恢复已删除的分支、文件或丢失的commit
亲测可用 因为自己 commit 并且 push 后 因为冲突 提交不了,不小心做了 rebase 代码被 覆盖 用以下命令 还原: 查看所有日志 并记下 hash 值 git reflog 然后用: ...
- commit日志历史不一致的Git仓库合并
有个项目,用SVN commit的在国内开源中国的码云托管,可以直接Git clone"导出"一个本地的git仓库,我在Github上新建立了一个远程的仓库,准备把在码云上clon ...
- [原]git的使用(一)---建立本地仓库、add和commit、status和git diff、版本回退使用git reset
在window下已经安装了git的环境 1.建立本地仓库 mkdir test #建立test目录 cd test #进入目录 git init # ...
- svn 迁移到 git 仓库并保留 commit 历史记录
1.svn 转换为 git(会提示,让你输入先前 svn 的账号与密码) # 切换至 本地项目目录 cd /Users/jianbao/PhpStormProjects/fiisoo/ # 克隆 sv ...
- 使用私有git仓库备份服务器脚本和配置文件
1. 创建私有git仓库 服务器端配置: # 安装 git yum -y install git # 创建 git 用户 useradd git # 创建私有仓库数据存储目录 mkdir /git_b ...
- 手把手教你配置git和git仓库
今天是git专题的第二篇,我们来介绍一下git的基本配置,以及建立一个git仓库的基本方法. 首先申明一点,本文不会介绍git的安装.一方面是大部分个人PC的系统当中都是已经装好了git的,另外一方面 ...
- (转)如何将本地git仓库上传到GitHub中托管+实践心得
Git——新手入门与上传项目到远程仓库GitHub(转) - Chen_s - 博客园http://www.cnblogs.com/Chenshuai7/p/5486278.html 注意的问题: 1 ...
随机推荐
- 腾讯云 ubuntuservermysql安装和外网訪问
1 腾讯云 购买ubuntu 默认账户是ubuntu(因为winscp 使用ubuntu没有权限写文件) 因为腾讯云主机ubuntu系统默认username为ubuntu,不喜欢每次做什么都要sudo ...
- Android——隐藏输入法的小技巧
今天偶然在百度地图提供的DEMO里看到这样一段代码.认为确实是个小技巧,就写下来分享一下. 针对的问题: 我们在开发android界面的时候,常常使用EditText控件.然后每次进入这个页面的时候, ...
- linux块设备的IO调度算法和回写机制
************************************************************************************** 參考: <Linux ...
- Oracle新建Schema
1.首先,创建(新)用户: create user username identified by password; username:新用户名的用户名 password: 新用户的密码也可以不创建新 ...
- 修改mysql连接的密码
mysql8.0修改密码: ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的password'; msyql开启实现 ...
- 常用相关linux命令
查看进程netstat -tnlp | egrep "(9097)" lsof -i:9097 ps -ef | grep kafka 观察句柄变化lsof -p $pid | w ...
- Spark基本运行流程
不多说,直接上干货! Spark基本运行流程 Application program的组成 Job : 包含多个Task 组成的并行计算,跟Spark action对应. Stage : Job 的调 ...
- HTTP_PROXY
Linux, macOS, or Unix: $ export HTTP_PROXY=http://a.b.c.d:n $ export HTTPS_PROXY=http://w.x.y.z:m 设置 ...
- 不懂技术也可以轻松开发一款APP
这是个衣食住行都离不开手机的时代,甚至可以说,我们不用考虑其他的东西,只要拿着手机,就可以出门做自己想做的事情. 这就是手机app的强大之处,覆盖面极广,小到聊天交友,大到投资理财.每次都是app为我 ...
- Unity 控制public/private 是否暴露给Inspector面板
默认情况下Public是暴露给Unity,protect/private是不暴露给Unity的,但有时候想让外部引用,又不想暴露给Unity,怎么办? 对Unity隐藏,使用[HideInInspec ...