`
yang_ch
  • 浏览: 80554 次
社区版块
存档分类
最新评论

git删除错误提交的commit

阅读更多

今天由于操作不熟练,提交了一次代码,导致大量错误出现,现在想还原到上午的版本,研究了半天终于成功,现将心得分享:

1.使用git客户端的shell命令行。

2.先用命令将本地版本还原到上面版本: git reset --hard 56a3bab81f37f50ed4355def97f15dd524524fa9

3.将本地分支强制提交到远程服务器:git push origin HEAD --force

 

至此,我的还原至此结束,但是会出现一个问题,加入我们错误的commit叫A,同事已经pull过A的代码了。

我虽然将服务器的版本还原了,但是同事合并提交代码以后A又回来了。

其实是因为同事的本地分支中已经存在了A的错误提交,所以合并之后会将A又作为commit提交。

所以已经pull的同事只能先将本地分支删除,才能算完全的还原到上个版本。

下面步骤删除本地分支

4.先切换到b分支,然后删除develop分支 

  git checkout b

  git branch -d develop

5.切换到develop分支正常开发

   git checkout develop

 

 

所以在此提醒大家,commit之前一定要确保代码正常,不然会带来灾难性后果,我们分支只有3个同事pull了,如果项目大了,都几百人pull了你的代码,你就等死吧。

 

 

分享到:
评论

相关推荐

    解决git误commit大文件导致不能push问题

    在使用Git进行版本控制时,有时可能会不慎将大文件提交到了仓库中,导致在尝试`git push`时遇到错误,例如“RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 Request Entity Too Large”或者...

    git修改已commit的注释信息实现

    在Git版本控制系统中,提交注释(commit message)是记录代码变更的重要部分,它有助于团队成员理解每次提交的目的和变化内容。有时,在提交后我们可能会发现注释信息不够准确或全面,这时就需要修改已提交的commit...

    自己做的git笔记分享。

    - **删除文件**:使用`rm`命令删除文件,然后使用`git add`和`git commit`将删除操作提交到仓库中。 ```shell rm 文件名 git add 文件名 git commit -m "删除文件" ``` - **恢复文件**:如果文件被错误删除,...

    详解git commit --amend 用法

    首先,当你意识到上一次的提交有误,例如代码有错误,或者提交信息描述不准确时,你可以使用 `git commit --amend`。运行这个命令后,Git 会打开默认的文本编辑器,如 vim 或者 nano,让你修改最后一次提交的信息。...

    Git常见错误解决1

    - 使用 `git commit -m 'first commit'` 提交初始更改。 5. **关联远程仓库:** - 使用 `git remote add origin git@github.com:defnngj/hello-world.git` 关联远程仓库。 6. **推送更改到远程仓库:** - 使用 ...

    Git解决提交冲突的问题

    7. 最后,使用 `git commit` 提交您的更改,并附上适当的提交消息,说明您解决了冲突。 例如,如果有一个文件 `example.txt` 存在冲突,可能看起来像这样: ``` This is the current branch's content. ======= ...

    学习git和gitbash使用的一些详细操作

    - 删除文件:`git rm <file>`命令用于删除工作区中的文件,并将这次删除操作加入到暂存区,之后使用`git commit`来提交。 Git分支: - `git branch`可以查看当前所有分支。 - `git branch <branch-name>`用于创建新...

    git-commit-emoji:Git提交表情符号是用于在Git提交消息上使用的表情符号的标准

    Git提交表情符号(Git Commit Emojis)是一种在Git提交消息中使用表情符号的约定,它为不同的代码更改类型提供了一种视觉上更有趣且统一的方式来表达提交的目的。这个标准可以帮助团队成员快速理解代码库的历史记录...

    git错误回滚工具,对配置文件误删有大作用

    Git 错误回滚工具对配置文件误删的解决方案 Git 是一个功能强大的版本控制系统,可以帮助开发者追踪代码的变化历史,并在出现问题时进行回滚。下面是 Git 的一些基本概念和使用方法: 1. Git 安装:使用 DNF 包...

    Git常见使用命令参考

    * git cherry-pick <commit>:应用指定提交记录 * git tag <tagname>:创建新标签 * git submodule:管理子模块 Git错误处理 在使用Git过程中,可能会遇到一些错误,以下是一些常见错误的解决方法: * 错误:无法...

    git如何撤销commit的方法(未push)

    这是一个危险的操作,因为它会完全撤销所有未推送的更改,包括`git commit`和`git add`,并删除工作区的任何未提交改动。除非你确定要放弃这些更改,否则应谨慎使用。 当你想要撤销commit时,首先需要确定你要回退...

    git命令添加 修改 删除 冲突解决办法.docx

    接下来,使用`git commit`将文件从暂存区提交到本地仓库,并附上提交信息: ``` git commit -m "添加test.txt文件" ``` 最后,使用`git push`将更改推送到远程仓库: ``` git push origin master ``` 2. **...

    git 常用命令和示例

    如果您不小心提交了一些错误的更改或者想要撤销某些更改,可以使用`git reset`。如果您不再需要某个文件,可以使用`git rm`从版本控制中移除它。而如果您想要丢弃对某个文件所做的所有更改,可以使用`git checkout`...

    高频使用的Git命令.docx

    * `git reset --hard commit_sha1`:回退到指定的提交记录,并且删除未提交的修改。 * `git reset --soft commit_sha1`:回退到指定的提交记录,但保留未提交的修改。 * `git reset --mixed commit_sha1`:回退到...

    git 操作指南

    - git commit命令用于将暂存区的内容提交到本地仓库。 - -a选项会自动把所有已跟踪的文件中的修改或删除提交到本地仓库。 - --amend选项用于修改最近一次的提交说明。 5. 合并分支:git merge - git merge用于...

    Git入门教程.pdf

    如果需要撤销改动,可以使用`git reset --hard HEAD^`回退至上一次提交,或者通过`git reflog`找到特定提交的哈希值,然后用`git reset --hard commit_hash`回到指定的提交。 7. 分支管理 Git的分支机制是其强大...

    Git撤销使用方法,详细教学

    如果你已经推送了不希望的提交,但尚未被其他人拉取,可以使用`git revert <commit>`创建一个新的反向提交来撤销它,然后再次推送。这将保留历史记录,表明有一个提交是用来修复之前的错误。 总之,Git的撤销功能...

    git推送项目命令.pdf

    3. **增加/删除文件**:`git add`将文件加入暂存区,`git rm`移除文件,`git commit`提交更改。 4. **查看状态**:`git status`查看工作区状态,`git log`查看提交历史。 5. **分支管理**:`git branch`列出所有...

    Git 上传大文件

    如果文件已经被提交到了版本库中,可以使用命令 `git commit --amend --no-edit --reset-author` 来撤销最后一次提交,并使用 `git checkout <commit> -- <filename>` 恢复特定版本的文件。 - **推送至远程服务器**...

    Git常用命令及错误1

    `git log` 展示提交历史,每个提交的信息包括作者、时间、提交消息等。 `git reflog` 记录每一次命令,即使未提交,用于查找过去的版本。 4. **版本回退**: `git reset --hard HEAD^` 回退到上一个版本,`HEAD^...

Global site tag (gtag.js) - Google Analytics