git修改已提交commit的内容

假设我们需要修改倒数第三个commit的内容

1、首先调用`git rebase`

git rebase -i HEAD~3

此时会产生如下的提交列表

pick f7f3f6d changed my name a bit
pick 310154e updated README formatting and added blame
pick a5f4a0d added cat-file

# Rebase 710f0f8..a5f4a0d onto 710f0f8
#
# Commands:
#  p, pick = use commit
#  r, reword = use commit, but edit the commit message
#  e, edit = use commit, but stop for amending
#  s, squash = use commit, but meld into previous commit
#  f, fixup = like "squash", but discard this commit‘s log message
#  x, exec = run command (the rest of the line) using shell
#
# These lines can be re-ordered; they are executed from top to bottom.
#
# If you remove a line here THAT COMMIT WILL BE LOST.
#
# However, if you remove everything, the rebase will be aborted.
#
# Note that empty commits are commented out

当需要更新相应的commit时,就将commit序列号之前的pick改为edit(可一次将多个pick修改为edit)

退出编辑器,即处于该commit中

2、在对commit进行修改之后,进行正常的git add,最后调用

git commit --amend

以及

git rebase --continue

进入下一个需要edit的commit,如果有的话

3、重复步骤2,直到rebase完成

时间: 2024-10-11 11:47:29

git修改已提交commit的内容的相关文章

git修改已提交记录的注释

已提交暂存区但还未提交远端仓库 命令:git commit --amend -m 已提交远端仓库 命令:git rebase 可以参考:http://www.cnblogs.com/dudu/p/4705247.html

git 修改已提交的注释

在git中,其commit提供了一个--amend参数,可以修改最后一次提交的信息 修改最后一次提交注释 git commit --amend 然后在出来的编辑界面,直接编辑注释的信息,保存退出 git rebase -i HEAD~3 git使用amend选项提供了最后一次commit的反悔.但是对于历史提交呢,就必须使用rebase了. 修改push后的历史提交注释 这个命令出来之后,会出来三行东东: pick:******* pick:******* pick:******* 如果你要修改

git分支合并、撤销;git修改已push的commit信息; git 撤销操作;

git分支合并 1.分支代码提交 2.git branch 查询本地分支 3.git checkout 分支名1 切换分支到需要合并的分支上 4.git merge 分支名2  //选择要合并到 分支名1 的分支名2 eg: 如果develop_screen分支合并到develop分支上,这个时候切换到develop分支上, git merge develop_screen 5.合并之后可能会有冲突,可用git status 查看冲突代码 <<<<<<<  ===

Git 查看某次commit的内容--- git show commit_id

其他: 1) 查看最近n次提交的修改: git log -p -n 2) 获取commit id: git log   原文地址:https://www.cnblogs.com/butterflybay/p/12088453.html

SVN修改已提交版本的日志

在工作中一直是使用svn进行项目的版本控制的,有时候由于提交匆忙,或是忘了添加Log,或是Log内容写的有错误.今日遇到此类情况,想要在查看项目的日志时添加log或是修改log内容,遇到如下错误:Repository has not been enabled to accept revision propchanges;ask the administrator to create a pre-revprop-change hook显然此情况是svn服务端设置的问题,版本在提交后不允许修改log

SVN修改已提交版本的注释

SVN提交文件后,发现注释写的不完整或不够明确,想再修改注释文字.通过View Project History dialog修改完成后,在提交时遇到如下错误:Repository has not been enabled to accept revision propchanges;ask the administrator to create a pre-revprop-change hook显然此情况是svn服务端设置的问题,版本在提交后不允许修改log.需要在服务端添加一个hook来允许l

VisualSVN:允许修改svn提交日志(pre-revpro-change hook)

有时候需要对之前版本提交的错误的日志信息进行修改或者进行补充描述: 1.在windows 7( 64位 )下使用TortoiseSVN客户端,选中代码目录,点击右键,选择<显示日志> 在出来的日志列表对话框中,选择某个提交版本,再点击右键,选择<编辑日志信息>,如下图所示: 我们修改原来空白的日志信息 万恶报错信息出现了 这个时候怎么处理呢??难道SVN不爱我们了!! 由于缺省情况下为安全起见Subversion不允许开发人员修改已提交reversion的日志信息,这样会报错误,提

git中如何修改上一次commit的内容

如果刚刚git commit提交了,但是想要修改commit的内容,如何修改呢? 如果只是在本地提交了,还没有push到远端,可以按照下面的方法操作: 1.用 git commit --amend 命令进入 vim 编辑器,界面如下所示: 然后你会发现怎么输入都没反应,这是因为vim处在不可编辑状态. 2.按下字母键c,此时进入编辑状态,可以修改提交的信息了,如下图所示: 修改好注释之后,又发现退出不了了. 3.此时,按Esc退出编辑状态,然后连续按两次Z,就退出vim编辑器了,回到了命令行状态

修改GIT已提交的用户名和邮箱

修改GIT已提交的用户名和邮箱 原文:https://help.github.com/en/github/using-git/changing-author-info 说明 要更改在现有提交中记录的名称和/或电子邮件地址,必须重写Git存储库的整个历史. 警告:此操作会破坏存储库的历史记录.如果您正在与其他人协作创建存储库,则重写已发布的历史记录被认为是不好的做法.你应该只在紧急情况下这样做. 使用脚本更改存储库的Git历史记录 使用下面的脚本,更改已提交数据的author或committer.