随心所欲生成git仓库任意一段commit的专用patch应用小实践

简介:   随心所欲生成git仓库任意一段commit的专用patch应用小实践      我们在开发中,时不时的可能要去做一个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命令。下图是笔者的操作记录截屏:


        产生了多个patch,具体多少个patch就看你基于base分支后你做了多少次git commit,一个commit对应一个patch,然后把这些patch给对方,对方按照patch的顺序从0001开始的patch一个个打上去就可以了,这样的话就减少了很多的数据传输,效率还是高一些。

        那下面我就来谈谈,我们怎么做开发分支的一部分的patch,比如就是最近提交的三个commit。操作如下:


      要基于开发分支先克隆一个branch出来,再回退三个commit,你要做几个commit的patch你就回退几个commit,然后还是利用format-patch来做。如果要做开发分支中间几个commit的patch,大体方法还是差不多,只不过先退到要做patch的commit位置,再克隆branch,再在克隆分支上回退几个你想做patch的commit,方法还是差不多,活学活用就好了。

    

目录
相关文章
|
5月前
|
存储 Linux 开发工具
Git:现代软件开发的基石——原理、实践与行业智慧·优雅草卓伊凡
Git:现代软件开发的基石——原理、实践与行业智慧·优雅草卓伊凡
148 21
Git:现代软件开发的基石——原理、实践与行业智慧·优雅草卓伊凡
|
3月前
|
开发工具 git
使用Git下载指定版本或指定commit
使用Git下载指定版本或指定commit
|
4月前
|
存储 人工智能 缓存
Git Commit规范:为什么有些公司要求变更行数限制?·优雅草卓伊凡
Git Commit规范:为什么有些公司要求变更行数限制?·优雅草卓伊凡
184 3
Git Commit规范:为什么有些公司要求变更行数限制?·优雅草卓伊凡
|
5月前
|
JavaScript 前端开发 持续交付
实际工作中 Git Commit 代码提交规范是什么样的?
实际工作中 Git Commit 代码提交规范是什么样的?
256 7
|
7月前
|
人工智能 前端开发 Java
用git rebase命令合并开发阶段中多条commit提交记录
通过 `git rebase`,可以合并多个提交记录,使开发历史更简洁清晰。操作分为 6 步:查看提交历史 (`git log --oneline`)、设置需合并的提交数 (`git rebase -i HEAD~N`)、修改动作标识为 `s`(squash)、保存退出编辑、调整提交信息、强制推送至远程仓库 (`git push -f`)。此方法适合清理本地无关提交,但若有团队协作或冲突风险,需谨慎使用以避免问题。
954 60
|
5月前
|
网络安全 开发工具 git
Git仓库创建与代码上传指南
本教程介绍了将本地项目推送到远程Git仓库的完整流程,包括初始化本地仓库、添加和提交文件、创建远程仓库、关联远程地址及推送代码。同时,还提供了`.gitignore`配置、分支管理等可选步骤,并针对常见问题(如认证失败、分支不匹配、大文件处理及推送冲突)给出了解决方案。适合初学者快速上手Git版本控制。
|
6月前
|
Shell 开发工具 git
解决git bash报错:在仓库中检测到可疑的所有权
总的来说,解决“在仓库中检测到可疑的所有权”的报错,关键在于理解和调整文件或目录的所有权。只要我们正确地设置了文件或目录的所有权,那么我们就可以避免这种问题,让Git Bash正常工作。
229 22
|
4月前
|
安全 Shell 开发工具
Windows下使用git配置gitee远程仓库
就在前几天因为一些原因,我的电脑重装了系统,然后再重新配置git的环境的时候就遇到了一些小问题。所以我决定自己写一篇文章,以便以后再配置git时,避免一些错误操作,而导致全网搜方法,找对的文章去找对应的解决方法。下面为了演示方便就拿gitee来演示,不拿GitHub了写文章了。
217 0
|
9月前
|
开发工具 git
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
473 69
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
|
6月前
|
前端开发 开发工具 git
Git报错处理:解决git commit时的lint-staged错误提示。
极好的,你对Git的lint-staged出了一个令人头疼的问题。让我们一起钻研一下,找到一种方法来解决一切。 首先,我们要确定你是在做什么操作时候遇到了问题。lint-staged通常在我们运行 git commit 时启动,它做的工作是在你提交之前运行一些指定的命令检查你的代码。当lint-staged报错,多半是因为检查未通过,或者它试图运行的命令存在问题。 让我们以一种图解的方式来描绘一下这个过程,就像canvas上的画面那样。git正在温柔的将你的修改捆绑起来,准备提交。突然,lint-staged走了出来,并开始盘问着Git,寻找可能的错误。如果lint-staged找到了什么
710 24