我是靠谱客的博主 活力身影,最近开发中收集的这篇文章主要介绍Git教程 —— 修改远程提交,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

删除

有时候我们可能会遇到Git提交错误的情况,比如提交了敏感的信息或者提交了错误的版本等,这个时候我们就需要将提交到代码库的记录删除掉 。

这里写图片描述

现在,我要将github远程仓库中branch-2分支最新提交的三个记录删除掉。

首先,找到需要回滚到的提交点的hash值

这里写图片描述

不难看到,需要复制提交记录为“branch-2-1”的hash值,然后使用git reset --hard commit_hash 命令

这里写图片描述

再使用git push origin HEAD --force命令即可

这里写图片描述

这里写图片描述

可以看到,虽然复制的hash值所对应的那条记录没被删除,但删除效果已经成功了!

修改

对于已经提交过的注释,如果需要修改,可以借助git commit --amend命令来实现。

这里写图片描述

现在,我要将最近一次提交的注释“branch-2-3”改为“branch-2-1-2”,那么就需要通过命令行修改对应的本地仓库。

这里写图片描述

这里写图片描述

这个时候,就会进入编辑框,然后修改注释即可。

这里写图片描述

进入编辑界面还不能编辑注解,这个时候按下Shift+A,最底部会出现INSERT的字样,这个时候就可以编辑更改注解了;更改完之后,按下Esc,再按下Shift+Q,这时底部可输入命令了,输入wq命令,退出并保存,如果退出而不想保存的话,就键入q命令即可,而如果想要强制退出且不保存,则可键入w命令

这里写图片描述

这里写图片描述

这个时候,本地仓库已经修改了,要修改远程仓库,只需重新提交一下即可。

这里写图片描述

这里写图片描述

上面是修改最近一次提交的记录,如果是想修改倒数第二次、第三次提交呢?这个时候就需要借助git rebase -i commit_hash命令,其中commit_hash可以是截止的想要修改的记录的hash值,也可以用HEAD~num来替换,比如git rebase -i HEAD~3

这里写图片描述

这里写图片描述

接下来就进入到编辑界面。

这里写图片描述

可以看到,截止到的那个hash值所对应的那条记录并没有包含在修改列表中。

这样的可编辑文本,把后悔的提交由pick修改为edit,然后保存退出。

这里写图片描述

这里写图片描述

这个时候,由于要改两个记录(标记了两个edit记录),所以根据提示,使用git commit --amend来一个记录一个记录地修改,每改完一个记录就使用git rebase --continue来继续进行下一步。

这里写图片描述

Shift+A键就可以对注释进行修改编辑了。

这里写图片描述

修改完后,按下Esc键,然后按下Shift+Q键,就可以编辑退出命令了。

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这个时候可以看到,本地记录已经修改成功了,按下Q键退出log记录,然后提交记录即可。

这里写图片描述

这里写图片描述

至此,修改成功!

合并

现在,我这儿想要将多条记录合并成一条记录,那么这个操作和之前修改多条记录差不多,只是将pick改成squash即可。

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

参考链接:
Github Git彻底删除历史提交记录的方法
git commit ammend 修改已经提交的注释
在git bush中如何退出vim编辑器
git更新错误Can’t update: no tracked branch

最后

以上就是活力身影为你收集整理的Git教程 —— 修改远程提交的全部内容,希望文章能够帮你解决Git教程 —— 修改远程提交所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部