`

git push错了分支,要求回滚已经push成功的

    博客分类:
  • git
阅读更多

昨天push时push错了分支

先简单说下情况:

我们测试分支和上线分支都是master

刚提交了一个功能,准备今天上线的.

接着开发下一个功能A,commit 到了本地的master分支,准备push到新分支的



 但是忘了修改push的分支,结果把功能A 的代码push到了master分支,

突然想到master分支明天是要上线的,就着急了.

因为功能A 是我刚提交的代码,是没有通过测试的,但是现在已经在master分支了.

明天上线会从master分支拉代码,这样就会把未通过测试的功能A 上线--这是绝对不允许的.

怎么办呢?

肯定是回滚?关键是怎么回滚?

注意:我不仅commit了,我还已经push了!!!



 

所以需要revert 4次,注意revert的顺序:

 

步骤:

(a)依次执行:

git revert 5e84de1d6be4c317acdd60564cb16ffca10a7850

由上到下revert:

 

(b)git commit

(c)git push

如何获取版本号:

 

 这是一次惨痛的教训

最佳实践:

每次开发新的功能时,从本地分支checkout 一个新的本地分支B

新功能就在分支B 上面开发,然后push到新的远程分支B ,

新功能开发完成之后,merge 分支B 到本地master分支

 

  • 大小: 90.9 KB
  • 大小: 132.4 KB
  • 大小: 573.9 KB
  • 大小: 123.9 KB
  • 大小: 140.5 KB
1
6
分享到:
评论

相关推荐

    git 删除分支和回滚的实例详解

    git 删除分支和回滚的实例详解 【git 删除本地分支】 git branch -D br 【git 删除远程分支】 git push origin :br (origin 后面有空格) git代码库回滚: 指的是将代码库某分支退回到以前的某个commit id 【本地...

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

    6. 测试关联:使用 `echo` 命令创建一个新的测试文件,然后使用 `git add` 和 `git commit` 命令将其上传至本地仓库,并使用 `git push` 命令将其推送至远程仓库。 在使用 Git 时,如果我们不小心删除了某个文件,...

    如何使用Git优雅的回滚实现

    例如,某个需求分支被合并到master,中间穿插了bugfix,然后产品反悔,要求回滚需求但保留bugfix。此时,最佳做法是按时间顺序回滚,避免手动删除代码或复制粘贴。 ```shell git revert N..S # 只回滚非merge ...

    git-rollback:轻松回滚提交

    安装$ gem install git-rollback用法$ git rollback贡献分叉( ) 创建功能分支( git checkout -b my-new-feature ) 提交更改( git commit -am 'Add some feature' ) 推送到分支( git push origin my-new-...

    git-push-deploy:它用于 git push 部署

    Git Push Deploy 是一种基于 Git 的自动化部署流程,它允许开发者通过执行 `git push` 命令来将代码更新推送到远程仓库,并触发构建和部署过程。这种方式简化了开发环境与生产环境之间的同步,提高了软件交付的效率...

    git安装包git-2.34.0-64-bit.rar

    7. **远程仓库**:Git可以与像GitHub或GitLab这样的远程服务集成,`git remote add origin`命令用于添加远程仓库,`git push -u origin main`将本地分支推送到远程仓库。 8. **图形化界面**:虽然Git主要是命令行...

    Git 命令速查表

    在推送代码到远程仓库时,可以使用`git push <remote> --all`来推送所有分支,`git push <remote> --force`用于强制推送当前分支到远程仓库,而`git push <remote> --tags`则用于推送本地标签到远程仓库,因为默认...

    IDEA通过git回滚到某个提交节点或某个版本的操作方法

    IDEA 通过 Git 回滚到某个提交节点或某个版本的操作方法 IDEA 是一款功能强大且流行的集成开发环境,而 Git 是一个开源的分布式版本控制系统。通过 Git,开发人员可以更好地管理项目代码的版本历史记录。本文将详细...

    git 应用大全

    - `git branch -d <branch>`:删除分支(仅当分支已经合并至其他分支时可用)。 - `git branch -D <branch>`:强制删除分支。 4. **远程仓库交互**: - `git remote add origin <url>`:添加远程仓库。 - `git ...

    Git命令详解.docx

    * 推送分支到远端仓库:使用 `git push` 命令推送分支到远端仓库。 ### Git 远端仓库 * 设置一个远端的 Git 仓库:使用 `git remote` 命令设置一个远端的 Git 仓库。 * 推送更改到其他的仓库:使用 `git push` ...

    git 使用详细手册

    此外,`git log`用于查看提交历史,`git diff`展示文件的差异,`git blame`追踪每一行代码的最后修改者,`git reset`用于回滚到特定提交,而`git rebase`则用于整合分支历史。 标签(Tags)在Git中用于标记重要的...

    GIT 压缩包 适用于压缩包式安装git

    接下来,你可以学习基本的Git命令,如`git clone`(克隆远程仓库)、`git add`(暂存更改)、`git commit`(提交更改)、`git push`(推送本地更改至远程仓库)和`git pull`(拉取远程仓库的更新)等。 总的来说,...

    git尚硅谷笔记.pdf

    - `git push <remote> <branch>`:将本地分支推送到远程仓库。 - `git pull <remote> <branch>`:从远程仓库获取最新的更改并合并到本地分支。 #### 五、Git原理概述 - **Hash算法**:Git使用SHA-1哈希算法来...

    git 资源总结

    11. **推送**:`git push` 将本地的更改推送到远程仓库,如 `git push origin master` 推送 `master` 分支到远程仓库的 `master` 分支。 远程操作方面,`git fetch` 用来获取远程仓库的最新更新,而 `git pull` 则...

    Git快速操作

    git push ``` 查看提交历史,可以使用`log`命令: ```bash git log ``` 如果你想看到每个提交的具体代码变化,加上`-p`选项: ```bash git log -p ``` 有时需要撤销代码更改,`revert`命令可以回滚到某个特定...

    Git 的基本操作

    通过 Git,开发者可以跟踪文件和目录的变化,协同编辑代码,并轻松地回滚到以前的版本。以下是对标题和描述中提到的Git基本操作的详细说明: 1. **创建 Git 仓库** 在源代码目录下使用 `git init` 命令可以初始化...

Global site tag (gtag.js) - Google Analytics