背景 由于 Github 和公司 Git 使用账号不一样,偶尔没注意,提交出错后就需要修改 commit 信息。...修改最后一次提交 commit 的信息 # 修改最近提交的 commit 信息 $ git commit --amend --message="modify message by daodaotest"....com>" 修改历史提交 commit 的信息 操作步骤: git rebase -i 列出 commit 列表 找到需要修改的 commit 记录,把 pick 修改为 edit 或 e,:wq...保存退出 修改 commit 的具体信息git commit --amend,保存并继续下一条git rebase --continue,直到全部完成 中间也可跳过或退出git rebase (--skip...-i HEAD~3 # 本地仓库没 push 到远程仓库的 commit 信息 $ git rebase -i # vi 下,找到需要修改的 commit 记录,```pick``` 修改为 ```
执行后显示近n次commit信息 3.执行 git commit --amend后会跳出编辑器 4.执行$ git rebase --continue 修改最近n次提交 后会跳出编辑器4.执行1.... $ git rebase -i HEAD~n 例如:要修改近三次提交,git rebase -i HEAD~3 2....执行后显示近n次commit信息 如: pick sdf feat 111 pick 234 faet 111 错了 pick df3 feat 111 到需要修改的commit记录前,改pick...为edit 当保存并退出编辑器 3.执行 git commit --amend后会跳出编辑器 在编辑器里修改提交信息 4.执行$ git rebase --continue 5.如果需要将不止一处的...pick 改为 edit,需要在每一个修改为 edit 的提交上重复这些步骤。
目前规范使用较多的是引用或衍生 Github Angular开发中章节(Commit Message Guidelines).以下为规范译文: 关于如何格式化git commit消息,...而且,我们使用git commit消息生成AngularJS更改日志。 可以使用典型的git工作流程或使用CLI向导(Commitizen)添加提交消息格式。...要使用该向导,yarn run commit 请在对git进行更改后在终端中运行。 提交消息格式 每个提交消息均由信息头(header),正文(body)和页脚(footer)组成。... 所述信息头(header)是必须的,而信息头范围(scope)的是可选的。...在正文中应该说:This reverts commit .,其中哈希是要还原的提交的SHA。
git commit 如果不规范提交类型,真的翻起来乱七八糟的,所以提交信息的时候的确要规范下提交的前置信息。下面列了一些常见的提交信息。...单词命名 新功能 feat 新功能 feature 功能增强或改进 enhancement 修复 bug fix 文档相关的变更 docs 代码样式 style 原有功能重构 refactor 增加测试或修改现有测试
摘要 通过 Git 进行版本管理时,对于已经提交但没有 push 的 message 信息,发现提交信息填写错误后,如何进行修改? 对于已经 push 的 message 信息如何修改?...通过git rebase -i进行分支管理,以及重新操作已经提交的分支信息[reword,edit,squash 等]。此次用到的主要是reword修改已经提交的message信息。...修改已经 commit 但没有 push 的 commit message 查看提交历史 git log --oneline -10 --onlien的方式能够显示精简的日志信息 显示的信息[当前分支为...: 6edda7e的信息中没有加标题序号 da0bd4e的信息中标题序号错误 197fcdd的信息中标题序号和内容有误 通过git rebase -i编辑提交的历史 git-rebase...再次执行git log --oneline -10命令后,即可看到分支的信息为修改后的提交信息 修改已经 push 的 commmit message 对于已经提交的信息的分支信息操作步骤同上,只是在推送
git commit --amend 修改git提交记录用法详解 有时你提交过代码之后,发现一个地方改错了,你下次提交时不想保留上一次的记录;或者你上一次的commit message的描述有误,...这时候你可以使用接下来的这个命令:git commit --amend。...git commit --amend 这时bash里会出现以下内容: 其中,second commit 是你上次提交的描述,下面是一下说明信息,有告诉你上次提交的文件信息等等,可忽略。...接下来你要是想修改描述信息的话。...这是你再git log 看一下提交日志: 已经修改了提交描述信息,且原来的git版本没有了~~~喜大普奔!!你完成~~ 但是有个地方要注意,就是该操作会改变你原来的commit id哦。
1.1 修改最近一次的commit 修改提交的描述 git commit --amend 然后会进入一个文本编辑器界面,修改commit的描述内容,即可完成操作。...修改提交的文件 git add # 或者 git rm git commit --amend # 将缓存区的内容做为最近一次提交 1.2 修改任意提交历史位置的commit 可以通过变基命令...但是这个范围内的最终祖先commit不能修改,也就是如果有5行commit信息,你只能修改下面4行的,这不仅限于commit修改,重排、删除以及合并都如此。...这为某些误操作,导致不希望公开信息的提交,提供了补救措施 git rebase -i 如前面描述,这会进入文本编辑器,对某行提交进行排序或者删除,保存退出。...1.5 分离某次提交 变基命令还能分离提交,这里不描述,详情查看后面的参考链接 终极手段 git还提供了修改版本历史的“大杀器”——filter-branch,可以对整个版本历史中的每次提交进行修改,可用于删除误操作提交的密码等敏感信息
我在之前修改了一个文件,但是没有commit,现在我想要commit,日期为那天的日期 git 修改日期的方法很简单,因为有一个命令--date 可以设置 git 提交时间。...默认的 git 的提交时间会受到系统的时间的影响,如果想要系统的时间不会影响到 git 的提交时间,请使用本文的方式,自己指定提交的时间 使用git自定义时间的提交格式: git commit --date...="月 日 时间 年 +0800" -am "提交" 如果我要把日期修改为 2016.5.7 那么我可以使用下面代码 git commit --date="May 7 9:05:20 2016 +0800...commit --date = "月 日 时间 年 +0800" - am "提交" //git commit --date = "May 7 9:05:20 2016 +0800...(commit); } public string Push() { //git push origin master
我在之前修改了一个文件,但是没有commit,现在我想要commit,日期为那天的日期 git 修改日期的方法很简单,因为有一个命令--date 可以设置 git 提交时间。...使用git自定义时间的提交格式: git commit --date="月 日 时间 年 +0800" -am "提交" 如果我要把日期修改为 2016.5.7 那么我可以使用下面代码 git commit...commit --date = "月 日 时间 年 +0800" - am "提交" //git commit --date = "May 7 9:05:20 2016 +0800...(commit); } public string Push() { //git push origin master...p.WaitForExit(); //等待程序执行完退出进程 p.Close(); return output + "\r\n"; } } 如果修改过程需要修改上一次提交的日期
这几天修改了好几次主题,但每次修改提交到远程仓库之后,都不是自己提交的。开始的时候,没有注意,今天再看git提交记录的时候,发现了这个问题。既然发现了,就得需要修改一下了。...修改需要强制推送 git push -f, 所以没有强推权限也就不用尝试了? 创建sh脚本文件 在项目仓库下面创建一个sh脚本,我们命名为edit_name_email.sh #!...then GIT_COMMITTER_NAME="hshanx"; GIT_COMMITTER_EMAIL="hshanx@163.com"; GIT_AUTHOR_NAME...="hshanx"; GIT_AUTHOR_EMAIL="hshanx@163.com"; fi' -- --all 由于我是邮件信息错了,所以if [ "$GIT_COMMITTER_NAME.../edit_name_email.sh 推送到远程仓库 git push -f ## 也可以 git push origin master -f
注意:此操作会修改 Git 历史记录,正式工作环境不允许。..." ] then export GIT_COMMITTER_NAME="$CORRECT_NAME" export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL..." fi if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ] then export GIT_AUTHOR_NAME="$CORRECT_NAME" export...GIT_AUTHOR_EMAIL="$CORRECT_EMAIL" fi ' --tag-name-filter cat -- --branches --tags 因为修改了 Git 历史所有要使用强制推送...References Git 批量修改历史 commit 中的 user.name 和 user.email | segmentfault – EOF – # git
写完代码后,我们一般这样 git add . //添加所有文件 git commit -m "本功能全部完成" 执行完commit后,想撤回commit,怎么办?...这样凉拌: git reset --soft HEAD^ 这样就成功的撤销了你的commit 注意,仅仅是撤回commit操作,您写的代码仍然保留。...撤销commit,并且撤销git add ....--soft 不删除工作空间改动代码,撤销commit,不撤销git add . --hard 删除工作空间改动代码,撤销commit,撤销git add . ...顺便说一下,如果commit注释写错了,只是想改一下注释,只需要: git commit --amend 此时会进入默认vim编辑器,修改注释完毕后保存就好了。
修改上一条提交的 commit message git commit --amend 2....修改之前提交的 commit message 比如说,我想修改距此版本之前的第3条 commit message,运行 git rebase -i HEAD~3 显示 pick 56b2308 feat...82f65eb fix(pages movie): slides bug fixed pick 08b2087 feat(pages home & movie): add FABs animation 将要修改的那条...commit message,如 pick 56b2308 feat(pages): home DONE,pick 改为 edit,修改完成后保存退出。...然后运行 git commit --amend 修改 commit message。 最后运行 git rebase --continue 完成。
git提交估计也快上万次了,每次不知道怎么写好,今天在网上找到一套规范然后加上常用的一些,总结出来一套 Git commit 规范,没有强制的规定,主要是翻阅以前的日志会更清晰。...---- type: description type 是 commit 的类别,只允许如下几种标识: fix: 修复bug add: 新功能 update: 更新 refactor : 某个已有功能重构...perf : 性能优化 style : 代码格式改变 test: 增加测试代码 docs : 文档改变 revert: 撤销上一次的commit build: 构建工具或构建过程等的变动,如:关联包升级等...推荐以动词开头,如: 设置、修改、增加、删减、撤销等
为什么需要commit规范 a)提供更多的历史信息,方便快速浏览和项目接入以及交接 b)可以过滤某些commit(比如文档改动),便于快速查找信息 c)可以直接从commit生成Change log(需要工具支持...配置git commit提交模板 目前git commit规范使用较多的是Angular 团队的规范。...(documentation) # style: 代码格式修改(不影响代码运行的变动) # refactor:代码重构(即不是新增功能,也不是修改bug的代码变动) # test:测试用例修改 # chore.../zh-hans/v1.0.0-beta.4/ b)配置git template: git config --global commit.template ~/.git-commit-template...--save-exact 3.3 commit测试 安装完成之后,当需要git commit的时候换成 git cz 即可,commitizen 会按照规范提示commit msg的书写。
阅读量: 1 问题复现 写完代码后,我们一般这样 git add . //添加所有文件 git commit -m “本功能全部完成” 执行完commit后,想撤回commit,怎么办?...很简单,就这样: git reset --soft HEAD^ 这样就成功的撤销了你的commit 注意,仅仅是撤回commit操作,您写的代码仍然保留。...commit,并且撤销git add ....–soft 不删除工作空间改动代码,撤销commit,不撤销git add . –hard 删除工作空间改动代码,撤销commit,撤销git add . ...顺便说一下,如果commit注释写错了,只是想改一下注释,只需要: git commit –amend 此时会进入默认vim编辑器,修改注释完毕后保存就好了。
修改了本地的代码,然后使用: git add file git commit -m ‘修改原因’ 执行commit后,还没执行push时,想要撤销这次的commit,该怎么办?...解决方案: 使用命令: git reset --soft HEAD^ 这样就成功撤销了commit,如果想要连着add也撤销的话,–soft改为–hard(删除工作空间的改动代码)。...命令详解: HEAD^ 表示上一个版本,即上一次的commit,也可以写成HEAD~1 如果进行两次的commit,想要都撤回,可以使用HEAD~2 –soft 不删除工作空间的改动代码 ,...撤销commit,不撤销git add file –hard 删除工作空间的改动代码,撤销commit且撤销add 另外一点,如果commit注释写错了,先要改一下注释,有其他方法也能实现,...如: git commit --amend 这时候会进入vim编辑器,修改完成你要的注释后保存即可。
原文 写完代码后,我们一般这样 git add . //添加所有文件 git commit -m "本功能全部完成" 执行完commit后,想撤回commit,怎么办?...这样凉拌: git reset --soft HEAD^ 这样就成功的撤销了你的commit 注意,仅仅是撤回commit操作,您写的代码仍然保留。...commit,并且撤销git add ....--soft 不删除工作空间改动代码,撤销commit,不撤销git add . --hard 删除工作空间改动代码,撤销commit,撤销git add ....顺便说一下,如果commit注释写错了,只是想改一下注释,只需要: git commit --amend 此时会进入默认vim编辑器,修改注释完毕后保存就好了。
修改了本地的代码,然后使用: git add file git commit -m '修改原因' 执行commit后,还没执行push时,想要撤销这次的commit,该怎么办?...解决方案: 使用命令: git reset --soft HEAD^ 这样就成功撤销了commit,如果想要连着add也撤销的话,--soft改为--hard(删除工作空间的改动代码)。...HEAD^ 表示上一个版本,即上一次的commit,也可以写成HEAD~1 如果进行两次的commit,想要都撤回,可以使用HEAD~2 --soft 不删除工作空间的改动代码 ,撤销commit,不撤销...git add file --hard 删除工作空间的改动代码,撤销commit且撤销add 另外一点,如果commit注释写错了,先要改一下注释,有其他方法也能实现,如: git commit --amend...这时候会进入vim编辑器,修改完成你要的注释后保存即可。
我们试一下: 首先把 444、555 这俩 commit 记下来,待会还要用 然后 git reset 到 333 那个 commit: git reset --hard 65dfee 把私密信息去掉...: git show 9aded3 不过这样还是挺麻烦的,git reset 到那个 commit,修改之后重新提交。...然后我们再 git show 看下 333 那个 commit 确实去掉了私密信息。 再看看 444 的 commit: 这就是 filter-branch 的方案。...总结 当你不小心把私密信息提交到了某个历史 commit,就需要修改这个 commit 去掉私密信息。...第二种是 git rebase -i 这些 commit,它提供了一些命令,比如 pick 是使用这个 commit,edit 是重新修改这个 commit。
领取专属 10元无门槛券
手把手带您无忧上云