git commit的--amend选项】的更多相关文章

git commit --amend常常用来修改某个branch上最顶端的commit,大多数情况下,这个命令给人的感觉是用新的commit替换了原来的commit.git commit --amend与下面的语句等价: git reset --soft HEAD^ //将branch的头指针向前移动一个commit,--soft选项使得index和workspace tree的内容保持移动之前不变 ...do something... git commit -c ORIG_HEAD //-c选…
功能 将暂存区中的更改记录到仓库. 加到staging area里面的文件,是表示已经准备好commit的.所以在commit修改之前,务必确定所有修改文件都是staged的.对于unstaged的文件,git commit后也不会被记录. 参数 不带参数 最简单的提交命令是 $ git commit 这种方式会启动文本编辑器以便输入本次提交的说明. (默认会启用 shell 的环境变量 $EDITOR 所指定的软件,一般都是 vim 或 emacs.当然也可以使用 git config --g…
git commit中输入message的几种方式 - 简书 https://www.jianshu.com/p/ad461b99e860 在所有的git教程里,git commit肯定是一开始就会提到的命令.一般情况下每个commit都会有一段commit log message.message可能有一行内容,可能有多行内容,中间可能会有空白行.在第一个空白行前面的部分称为subject,之后的部分称为body.subject和body在git log或者git show的输出format中分…
任何时候,你都有可能需要撤消刚才所做的某些操作.接下来,我们会介绍一些基本的撤消操作相关的命令.请注意,有些撤销操作是不可逆的,所以请务必谨慎小心,一旦失误,就有可能丢失部分工作成果. 有时候我们提交完了才发现漏掉了几个文件没有加,或者提交信息写错了.想要撤消刚才的提交操作,可以使用 --amend 选项重新提交: $ git commit --amend 此命令将使用当前的暂存区域快照提交.如果刚才提交完没有作任何改动,直接运行此命令的话,相当于有机会重新编辑提交说明,但将要提交的文件快照和之…
git commit --amend命令用来修复最近一次commit. 可以让你合并你缓存区的修改和上一次commit, 而不是提交一个新的快照. 还可以用来编辑上一次的commit描述. 记住amend不是修改最近一次commit, 而是整个替换掉他. 对于Git来说是一个新的commit. 用法 git commit --amend 合并缓存区的修改和最近的一次commit, 然后用生成的新的commit替换掉老的. 如果缓存区没有内容, 那么利用amend可以修改上一次commit的描述.…
适用场景: 比方说,你的代码已经提交到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 方…
某同事执行git commit 时太兴奋,执行了 git commit --amend 慌了,不敢编辑上一个commit的description了,直接选择了wq退出,然而git毕竟强大,默认将改动合并提交并覆盖了上一个commit生成了一个新的commit id,这下更慌了,上一个commit id在git log里没了,没了,没了 此时只有两个字,奔溃 好在git有撤销方法,下面的代码拿来举例. 当前代码仓有如下文件: $ ll total 4 -rw-r--r-- 1 ****** 105…
提交信息很长时间内会一直保留在你的代码库(code base)中,所以你肯定希望通过这个信息正确地了解代码修改情况. 下面这个命令可以让你编辑最近一次的提交信息,但是你必须确保没有对当前的代码库(working copy)做修改,否则这些修改也会随之一起提交. $ git commit --amend -m ”YOUR-NEW-COMMIT-MESSAGE” 假如你已经将代码提交(git commit)推送(git push)到了远程分支,那么你需要通过下面的命令强制推送这次的代码提交. $ g…
适用场景: 比方说,你的代码已经提交到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 方…
git commit -m 注释信息 如果这时候注释信息输入错误,就可以输入以下指令更改 git commit --amend 键入" i "进入编辑模式 修改后键入ESC,:wq退出编辑模式 - END -…
目录 1.git commit --amend 命令说明 2.使用场景 (1)场景一 (2)场景二 3.git commit --amend 命令原理 这是我们Git中的第三种后悔药. 1.git commit --amend 命令说明 git commit --amend 命令:也叫追加提交,它可以在不增加一个新的commit的情况下,将新修改的代码追加到前一次的commit中. 使用该命令的好处,是避免许多无用的提交. 说明: 如果自上次提交以来,你还未做任何修改(例如,在上次提交后马上执行…
有时候提交过一次记录只有,又修改了一次,仅仅是改动一些较少的内容,可以使用git commit --amend. 添加到上次提交过程中: --amend amend previous commit git commit --amend # 会通过 core.editor 指定的编辑器进行编辑 git commit --amend --no-edit # 不会进入编辑器,直接进行提交 如果你之前没有配置 core.editor 选项的时候,会出现: error: There was a probl…
linux内核默认会包含git的commit ID. 而linux的内核在insmod模块时,会对模块和内核本身的版本做严格的校验.在开发产品时,改动内核后,由于commit ID变更,会导致linux内核变更,之前已编译发布的模块与升级后的linux版本不一致,必须重新编译,非常麻烦. 为了解决这个问题,很多开发者通过配置make menuconfig,去掉CONFIG_LOCALVERSION_AUTO选项,从而不再包含git commit ID. 关于linux包含git commit的实…
    Git commit git commit 主要是将用户通过git add命令添加到暂存区里的改动给提交到本地的版本库,关于版本库的构成可以查看我先前的笔记. 每次提交我们都会在本地版本库生成一个40位的哈希值,这个哈希值也叫commit-id,commit-id在版本回退的时候是非常有用的,关于版本回退git reset会在以后讲到.     1.1 git commit -m "message" 这种是比较常见的用法,-m 参数表示可以直接输入后面的"messag…
需求背景:我们修复Bug的时候,频繁提交APK包,导致测试同学搞不清哪个包才是最新的 比如一个版本3.0.1,我们可能后续基于这个版本陆续提交了好几个修复包 同时,如果服务端ip地址能在界面上配置的话,更好了 以上都是基于debug模式下的,线上版本不会出现这些选项 思路:git每次提交commit的时候,都会创建一个唯一的sha串,我们拿这个作为内部版本号. 先给上最终效果图 那么如何在gradle编译的时候,就把这些信息写入到app中呢 关键字 BuildConfig类. 在build.gr…
1: 在执行git commit的时候,有两种办法为该commit添加message信息一种是git commit -m 'your message'另一种是git commit会打开commit-editmsg文件以供编辑message信息现在的问题是, 打开后(我设定在sublime中打开)在文件里写了相关信息并保存, 接下来怎么办呢?再执行一次git commit还是打开新的message文件. 2: 不管您使用什么方式打开的commit message文件,修改以后,直接保存.此时表示的…
使用 git add 命令将想要快照的内容写入缓存区, 而执行 git commit 将缓存区内容添加到仓库中. Git 为你的每一个提交都记录你的名字与电子邮箱地址,所以第一步需要配置用户名和邮箱地址. 接下来我们写入缓存,并提交对 hello.php 的所有改动.在首个例子中,我们使用 -m 选项以在命令行中提供提交注释. 现在我们已经记录了快照.如果我们再执行 git status: 以上输出说明我们在最近一次提交之后,没有做任何改动,是一个"working directory clean…
git commit 主要是将暂存区里的改动提交到本地的版本库.每次使用git commit 命令我们都会在本地版本库生成一个40位的哈希值,这个哈希值也叫commit-id. commit-id在版本回退的时候是非常有用的,它相当于一个快照,可以在未来的任何时候通过与git reset的组合命令回到这里. 1. git commit -m "message" -m 参数表示可以直接输入后面的message,如果不加 -m 参数,那么是不能直接输入message的,而是会调用一个编辑器…
本文转自:http://www.cnblogs.com/lfxiao/p/9378763.html 写完代码后,我们一般这样 git add . //添加所有文件 git commit -m "本功能全部完成" 执行完commit后,想撤回commit,怎么办? 这样凉拌: git reset --soft HEAD^ 这样就成功的撤销了你的commit 注意,仅仅是撤回commit操作,您写的代码仍然保留. 说一下个人理解:HEAD^的意思是上一个版本,也可以写成HEAD~1 如果你…
原文 写完代码后,我们一般这样 git add . //添加所有文件 git commit -m "本功能全部完成" 执行完commit后,想撤回commit,怎么办? 这样凉拌: git reset --soft HEAD^ 这样就成功的撤销了你的commit 注意,仅仅是撤回commit操作,您写的代码仍然保留. 说一下个人理解: HEAD^的意思是上一个版本,也可以写成HEAD~1 如果你进行了2次commit,想都撤回,可以使用HEAD~2 至于这几个参数: --mixed 意…
每次准备提交前,先用 git status 看下,是不是都已暂存起来了,然后再运行提交命令 git commit: $ git commit 这种方式会启动文本编辑器以便输入本次提交的说明.(默认会启用 shell 的环境变量 $EDITOR 所指定的软件,一般都是 vim 或 emacs.当然也可以按照第一章介绍的方式,使用 git config --global core.editor 命令设定你喜欢的编辑软件.) 编辑器会显示类似下面的文本信息(本例选用 Vim 的屏显方式展示): # P…
[git的配置] 1.配置用户名和邮箱: 分为全局配置和局部配置 --system 系统配置  --global 全局配置    --local 局部配置 Git读取时:优先从local>global>system git config --global user.name name git config --global user.email email     2.别名的配置 使用git st 代替 git status git config --global alias.st statu…
问题描述       场景:当你提交的时候,发现跟要合并的流有冲突,你需要解决完冲突再次提交. 如果在SVN时代,你可以直接在本地解决完冲突再提交就可以了,因为SVN会把正确的代码先提交到服务器,至于有冲突的代码,你需要在本地解决完冲突再提交. 但在Git中这样做行不通,Git中每次提交都是完整的,也就是说,即使你这次提交有中冲突的代码,它也一并会推送到要合并的流,每次提交会有一个change_id,当你解决完冲突提交后,这个change_id又会发生变化.这样导致的直接后果是:由于Git是由提…
起因 团队对提交的commit message格式有约定俗称的要求,但是没有一个统一的规范,导致大家提交的commit message或多或少不太一样.因此,需要一个工具来帮助大家统一commit message的格式,也方便后续的分析和拓展. commitizen commitizen 是一个帮助规范commit message的工具.安装后的效果如下图: 安装commitizen npm install -g commitizen 安装adapter commitizen根据不同的adapt…
一直在使用git也看过格式各样commit log , review 代码时最刺激的是看到这类 "." 应付差事,还有 "fix bug","fix" 等等 沟通五何原则 简单介绍下沟通的"五何原则",因为commit log 是写给自己和团队其他成员看的,需要认真对待,前期debug没时间想清楚commit log , 后期任务完成也可以压缩多个提交为一个,单个提交可以使用 --amend 来修改等等,进入正题就是沟通的时候…
原文地址: http://xiguada.org/change-git-commit-message   Git cimmit信息push后,如何修改,amend可以修改最后一次commit信息,但对于历史提交信息,需要使用rebase命令.   1 比如要修改的commit是倒数第三条,使用下述命令: git rebase -i HEAD~3 2 把pick改为edit 3 然后 :wq 出现如下信息: 4 执行 git commit --amend 修改commit信息 5 退出保存 :wq…
git commit -m 使用问题 今天提交文件到github,步骤是: git add abc.py (abc.py是我当前随意写的一个文件名) git commit -m 'add codes for abc' git push origin 在第二步是,出现错误,错误如下: D:\tensorflow>git commit -m ' add codes for abc' error: pathspec 'add' did not match any file(s) known to gi…
一直以来,因为团队项目迭代节奏很快,每次发布的更新日志和版本更新都是通过人肉来完成的.有时候实在忙的团团转,对于手动的写这些更新信息就显得力不从心了.对于团队新来的小伙伴,有时候遇到些紧急情况,就更显的乱糟糟,还是得麻烦团队资深的同学.显然这些工作,用自动化工具再适合不过了. 本文是一篇项目自动化方面的使用教程,社区里面针对四类问题的解决方案很多,今天这里主要介绍的是 onventional-changelog 方案相关的内容. 如果你正在思考或者试图解决这方面的问题的话,不妨了解一下. con…
https://www.cnblogs.com/sandy-happyhour/p/5950084.html 今天用git commit -m “注释”提交的时候,注释写错了,于是各种查资料开始了和git bash vim的纠缠...(网上的资料我真是没操作成功,不过最后还是摸索出来了) 首先 使用 git commit --amend 命令,(修改最近一次提交的注释信息),会进入到vim 编辑器 然后 你会发现编辑器里你怎么输入都没反应,这是因为vim处在不可编辑状态,按下字母键 c,此时进入…
查看提交历史 然后在此项目中运行 git log,应该会看到下面的输出:   合并commit 信息 我们需要将 2dfbc7e8 和 c4e858b5 合并成一个 commit,那么我们输入如下命令   其中,-i 的参数是不需要合并的 commit 的 hash 值,这里指的是第一条 commit, 接着我们就进入到 vi 的编辑模式   可以看到其中分为两个部分,上方未注释的部分是填写要执行的指令,而下方注释的部分则是指令的提示说明.指令部分中由前方的命令名称.commit hash 和…