美文网首页iOS程序猿iOS学习笔记IOS
git 删除 提交错误的 commit, 本地与远程

git 删除 提交错误的 commit, 本地与远程

作者: JerseyBro | 来源:发表于2018-10-14 10:28 被阅读22次

## 前景

在使用 git 工作时, 难免会出现 commit 了一些不想提交的内容, 或者 commit 的时候 commit 的日志不太满意想要进行修改。 分两种情况一种是针对 commit 之后没有进行 push. 另一种则是 commit 之后 push 到了 remote, 下面分别讲一下分别对应的修改方式.

## 修改本地 commit.

  1. 如果单纯只是想修改 commit 的提交备注信息的话, 只需输入 $ git commit! 即可直接修改上次 commit 日志.
  • 单纯修改commit 提交备注信息 对应命令 $ git commit!
  1. 想修改 commit 内容则需要回滚版本, git log 直接查看上一个版本 HEAD, 输入命令 $ git reset HADE 回到上一个版本, 然后在重新提交自己想要提交的即可. 同时 commit 日志也可以重新写.
  • 修改 commit 提交内容 对应命令 $ git reset HADE

## 修改远程 commit. commit 后已 push 到远程

分别两种解决方法.

  • 方法一

删除掉上一个 commit 并且保留内容, 但是不需要 commit 日志, 或者单单修改 日志等。

命令行:

git reset HADE

git push origin developer --force developer 指的是远程分支名.根据你自己分支来输入。

相当于回到上一个版本, 之后 push 将之前修改的内容全部也 push 上来, --force 表示强制将本地 push 到远程, 使用 --force 需要谨慎 确保无误之后在添加哦.

  • 方法二

先撤销上一次的错误的 commit, 然后在重新生成一个新的提交. 可以理解成覆盖的效果。

  1. $ git revert HADE

  2. $ git add

  3. $ git commit

  4. $ git push

reset revert 区别

引用 git revert 用法

  1. git revert是用一次新的commit来回滚之前的commit,git reset是直接删除指定的commit。

  2. 在回滚这一操作上看,效果差不多。但是在日后继续merge以前的老版本时有区别。因为git revert是用一次逆向的commit“中和”之前的提交,因此日后合并老的branch时,导致这部分改变不会再次出现,但是git reset是之间把某些commit在某个branch上删除,因而和老的branch再次merge时,这些被回滚的commit应该还会被引入。

  3. git reset 是把HEAD向后移动了一下,而git revert是HEAD继续前进,只是新的commit的内容和要revert的内容正好相反,能够抵消要被revert的内容。

## 最后

希望此篇文章对您有所帮助,如有不对的地方,希望大家能留言指出纠正。
谢谢!!!!!
学习的路上,与君共勉!!!

本文原创作者:Jersey. 欢迎转载,请注明出处和本文链接

相关文章

  • git 删除 提交错误的 commit, 本地与远程

    ## 前景 在使用 git 工作时, 难免会出现 commit 了一些不想提交的内容, 或者 commit 的时候...

  • git 删除idea

    1:删除本地缓存 git rm --cached -r .idea 2:删除远程仓库 git commit -m"...

  • Git pull(拉取) 名词解释

    No commit ( 拉取代码时不提交本地代码) Squash commit ( 提交代码时,需要删除之前的远程...

  • 删除git远程仓库里面的文件夹

    git rm -r --cached . git commit -m"删除远程仓库全部,本地不变" git pus...

  • 提交代码

    1、提交代码: git status git commit -m "info" git push 2、删除本地的分...

  • Android Studio项目上传至Git

    一、Git上传流程 Push:提交代码至仓库中(远程/本地)Commit:提交代码至本地仓库;Pull:远程仓库代...

  • git常用操作

    1、git提交代码。提交代码前先检查状态,然后add、commit 、pull、push; 2、git远程覆盖本地...

  • git使用笔记

    下载代码git clone [url] 提交本地仓库git commit -m [注释] 推送远程仓库git pu...

  • git提交到远程上出现的错误

    一、 git远程提交出现的错误 1.在输入 git init git add . git commit -m "首...

  • git

    显示 git push将会提交的 commit 信息 git 回滚 本地回滚 远程回滚 git diff1.sta...

网友评论

    本文标题:git 删除 提交错误的 commit, 本地与远程

    本文链接:https://www.haomeiwen.com/subject/ybrzaftx.html