git commit --amend用法(摘抄)
适用场景:
比方说,你的代码已经提交到git库,leader审核的时候发现有个Java文件代码有点问题,于是让你修改,通常有2种方法:
方法1:leader 将你提交的所有代码 abandon掉,然后你回去 通过git reset …将代码回退到你代码提交之前的版本,然后你修改出问题的Java文件,然后 git add xx.java xxx.java -s -m “Porject : 1.修改bug…”
最后通过 git push origin HEAD:refs/for/branches
方法2:
leader不abandon代码,你回去之后,修改出问题的Java文件,修改好之后,git add 该出问题.java
然后 git commit –amend –no-edit,
最后 git push origin HEAD:refs/for/branches。
当我们想要对上一次的提交进行修改时,我们可以使用git commit –amend命令。git commit –amend既可以对上次提交的内容进行修改,也可以修改提交说明。
举个例子:
Step1:我们先在工作区中创建两个文件a.txt和b.txt。并且add到暂存区,然后执行提交操作:
Step2:此时我们查看一下我们的提交日志:
可以看到我们的提交日志中显示最新提交有两个文件被改变。
Step3:此时我们发觉我们忘了创建文件c.txt,而我们认为c.txt应该和a.txt,b.txt一同提交,而且a.txt文件中应该有内容‘a’。于是我们在工作区中创建c.txt,并add到暂存区。并且修改a.txt(故意写错语法且没有将a.txt的修改add到暂存区):
Step4:我们查看一下此时的提交日志,可以看到上次的提交0c35a不见了,并且新的提交11225好就是上次提交的修补提交,它就像是在上次提交被无视了,修改后重新进行提交了一样:
Step5:此时我们发现a.txt文件修改没有成功,于是我们还得进行一次对a.txt的修改,将a.txt add到stage,然后再执行一次与上一次类似的提交修补:
OK了,git commit –amend的用法大致就是这样。
总结:git commit --amend 相当于上次提交错误的信息被覆盖了,gitk图形化界面上看不到上次提交的信息,git log上也看不到之前的信息,而add 后再commit 相当于重新加了一个信息。相当于打了个补丁?
作者:shadow雨轩
链接:https://www.jianshu.com/p/a8a2ac58f37d
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
转载于:https://www.cnblogs.com/FineDay/p/10905417.html
git commit --amend用法(摘抄)相关推荐
- git commit --amend 用法详解
有时你提交过代码之后,发现一个地方改错了,你下次提交时不想保留上一次的记录:或者你上一次的commit message的描述有误,这时候你可以使用接下来的这个命令:git commit --amend ...
- git commit --amend 修改git提交记录用法详解
有时你提交过代码之后,发现一个地方改错了,你下次提交时不想保留上一次的记录:或者你上一次的commit message的描述有误,这时候你可以使用接下来的这个命令:git commit --amend ...
- git commit --amend两种用法
一.如果已经push到远端服务器,想修改已经提交过的commit信息 1.保存:Ctrl + o; 回车 ;退出:Ctrl + x # git commit --amend 2.重新提交gerrit审 ...
- Git之git commit --amend两种用法(五)
一.如果已经push到远端服务器,想修改已经提交过的commit信息 1.保存:Ctrl + o; 回车 ;退出:Ctrl + x # git commit --amend 2.重新提交gerrit审 ...
- 使用Git rebase合并多条提交记录commit。以及使用 git commit amend本地提交直接合并到远程已有commit的用法
需求场景一 : 对某个小的功能点进行多次反复的修改提交,且已经提交到远程,导致commit记录过多,太过于杂乱无章,想要精简合并一些提交记录. 场景还原: 比如下图4个git commit记录,log ...
- git commit --amend的用法
1.用于修改上次提交.应用场景:在公司,写了一个功能提交到老大,老大看了代码后,眉头一皱balabalba说一堆需要改的地方,你回来改正后,要是直接使用,git add .git commit -m& ...
- Git commit 常见用法
Git commit git commit 主要是将暂存区里的改动给提交到本地的版本库.每次使用git commit 命令我们都会在本地版本库生成一个40位的哈希值,这个哈希值也叫commit ...
- Git的撤销操作 git commit --amend
在项目中我们也经常会使用到撤销操作 使用这一节我们就讲一讲Git的撤销操作 撤销操作主要有如下几种 git commit --amend 撤销上一次提交 并讲暂存区文件重新提交 git checkou ...
- 【Git】Git 版本管理 ( 补充提交版本 git commit --amend | 版本库提取文件 git checkout -- filename | 删除文件 git rm )
文章目录 一.补充提交版本 git commit --amend 二.版本库提取文件 git checkout -- filename 三.删除文件 git rm 一.补充提交版本 git commi ...
最新文章
- android native java_在Android Native层中创建Java虚拟机实例
- HBase 参考指南 3.0 翻译活动期待大家的参与 | ApacheCN
- Codeforces Beta Round #9 (Div. 2 Only) C. Hexadecimal's Numbers dfs
- RabbitMQ简单队列模式
- Web安全学习Week5
- 谈谈我对Promise的理解
- Android小項目之---吃飯選哪?--》選擇對話框(附源碼)
- 天天 Java、C/C++,可这五种编程语言你知道吗?
- 实验四:用一维数组输出等腰三角形的杨辉三角
- seq()函数--R语言
- Linux系统安装三菱编程软件,如何安装三菱plc编程软件gx developer
- UE4是什么?虚幻4引擎是什么?
- 2022 Gartner RPA魔力象限发布,两家国产厂商入选,超自自动化成重点
- cocos做飞机大战笔记【敌机发射子弹】
- python辗转相除_Python基于辗转相除法求解最大公约数的方法示例
- 【南風-视觉】Ubuntu命令行安装QT
- 人的计算与机器的计算
- 8086段地址为什么是16的倍数?
- 官宣!Databend 和 XSKY星辰天合达成合作
- .NET家族新成员:G#语言简介
热门文章
- 为制造业构建Teams Power App 3:创建制造商UI
- 前端框架 Angular 11.0.0 正式发布,不再支持 IE 9 、10
- 在C#中引入延迟计算和公平调度
- 通过社交网络进行OWIN OAuth2身份验证
- 谈判失败:Oracle 杀死 Java EE
- php function函数用法,js的function函数是什么?js中function的用法
- restFul风格实现CRUD
- .net mvc html使用方法,C# ASP.NET MVC HtmlHelper用法汇总
- linux 查询mysql编码格式_Linux 修改MySQL编码格式
- Java web 应用全局变量_将properties文件的配置设置为整个Web应用的全局变量。