git 打补丁,即git review之后需要二次修改并提交代码

假如代码已经push上去了,可是当review时,发现有地方需要修改,你可以继续在本地修改你的文件,之后git status查看修改的文件,然后git add修改的文件,此时不能直接git commit了,因为git commit之后会产生新的commit ID,而你想做的是把这次的修改与上次的修改合并到一起,所以这次要commit到之前生成的ID上边,在git中这样的操作叫做打patch。这里我只会用git GUI commit到上一次ID中:

1>     跟第一次修改一样进行git add操作

2>     输入Git gui ,会弹出一个窗口,此时会有你第二次修改文件的记录,默认是New Commit, 你此时要选择Amend Last Commit, 即提交到最后一次commit上边,之后点击Commit按钮,然后回到git bash界面,继续git push,刷新你review的网页,则看到你在上一次修改之后又打了个patch,review代码时可以看到你刚刚的操作。

在这里可能还会出现的问题是,假如你想打patch,但是你git add之后,顺手就git commit了,此时才反应过来,你肯定埋怨自己,没关系的。你可以这样解决这个问题,直接git log查看commit日志,找到需要回退的那次commit的 哈希值,不出意外应该是从上往下数的第二个commit,可以根据commit时的comment来判定需要回退到哪次commit,之后git reset --hard commit_id,此时彻底回退到某个版本,本地源码也会变为上一个版本的内容,你重新进行一次第二次的修改即可。

时间: 2024-10-01 05:26:08

git 打补丁,即git review之后需要二次修改并提交代码的相关文章

Git 打补丁流程

A. 使用git制作补丁时, 需要创建一个新的分支, 修改之后再提交只需要修改需要修改的文件, 并使用git -format-patch -M master 将当前的分支与主分支(master)进行比较, 会自动生成一个补丁文件, 此处不需要add 在切换到master 分支中就会看到那个补丁文件, 这与分支之间是独立的有一些出入. B. 在master分支上在创建一个新的分支并切换到那个新的分支上去, 使用git am 补丁 文件名 命令应用补丁, 之后提交修改 C. 切换到主分支, 合并新分

git使用(一):如何创建一个工程、提交代码

1. 在git server端如何创建一个工程 (1) su git (2) mkdir linux-git.git (3) cd linux-git.git (4) git init --bare (5) exit 2. 在clinet端如何clone.提交代码 (1) git clone [email protected]:/home/prj_git/linux-git.git (2) cd linux-git (3) cp ../linux-3.18.3 ./ -rf (4) git ad

git提交代码至远程仓库

代码提交 代码提交一般有五个步骤: 1.查看目前代码的修改状态 2.查看代码修改内容 3.暂存需要提交的文件 4.提交已暂存的文件 5.同步到服务器 1.     查看目前代码的修改状态 提交代码之前,首先应该检查目前所做的修改,运行git status命令 a)        已暂存 (changes to be committed) new file //表示新建文件 modified //表示修改文件 deleted //表示删除文件 b)       已修改 (changed but n

Git打补丁常见问题

往往觉得得到某个功能的补丁就认为这个功能我就已经成功拥有了,但是在最后一步的打补丁的工作也是需要相当谨慎的,甚至有可能还要比你获取这个补丁花费的时间还要多.看到好多同行遇到这个问题,且最近自己也花费近20天「获取,打,验证」一个特性功能的补丁.趁热总结一下,知识点可能不多,但是问题是相当棘手的. $ git apply -h usage: git apply [options] [<patch>...] --exclude <path>      don't apply chang

Git 打补丁----基于源码改动生成 patch 包的方法

git diff 生成补丁方法: git diff 本次提交前一次commit的序列号 本次提交commit的序列号 > xxx.patch #使用diff方法也可以将多次修改打出一个patch包来 git apply XXX.path git format-patch $ git format-patch HEAD^ //生成最近的1次commit的patch: git format-patch -1 同作用 $ git format-patch HEAD^^ //生成最近的2次commit的

Git详解之六 Git工具(转)

Git 工具 现在,你已经学习了管理或者维护 Git 仓库,实现代码控制所需的大多数日常命令和工作流程.你已经完成了跟踪和提交文件的基本任务,并且发挥了暂存区和轻量级的特性分支及合并的威力. 接下来你将领略到一些 Git 可以实现的非常强大的功能,这些功能你可能并不会在日常操作中使用,但在某些时候你也许会需要. 6.1  修订版本(Revision)选择 Git 允许你通过几种方法来指明特定的或者一定范围内的提交.了解它们并不是必需的,但是了解一下总没坏处. 单个修订版本 显然你可以使用给出的

GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git分支 标签 过滤 Git版本工作流(转载)

最近听同事说他都在使用GitHub,GitHub是程序员的社区,在里面可以学到很多书上学不到的东西,所以最近在准备入手这方面的知识去尝试学习,正好碰到这么详细完整的文章,就转载了,希望对自己和大家有帮助. GitHub操作总结 : 总结看不明白就看下面的详细讲解. GitHub操作流程 : 第一次提交 : 方案一 : 本地创建项目根目录, 然后与远程GitHub关联, 之后的操作一样; -- 初始化Git仓库 :git init ; -- 提交改变到缓存 :git commit -m 'desc

Git详解之三 Git分支

相关文档 — 更多 Git 基础培训.ppt GIT 使用经验.ppt GIT 介绍.pptx GIT 分支管理是一门艺术.docx Eclipse上GIT插件EGIT使用手册.docx git/github学习笔记.doc git 版本控制系统.docx Git开发管理之道.pdf Git内部培训资料.pptx Git权威指南-第5篇-第32章-Gerrit.pdf Gitolite 构建 Git 服务器.pdf 版本控制之道 - 使用Git.pdf Git使用指南(中文).pdf Git-C

Git详解之一 Git起步

来自:http://www.open-open.com/lib/view/open1328069609436.html 起步 本章介绍开始使用 Git 前的相关知识.我们会先了解一些版本控制工具的历史背景,然后试着让 Git 在你的系统上跑起来,直到最后配置好,可以正常开始开发工作.读完本章,你就会明白为什么 Git 会如此流行,为什么你应该立即开始使用它. 1.1 关于版本控制 什么是版本控制?我真的需要吗?版本控制是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统.在本书所展示的