我的github现在有100个提交。 我需要回滚存储库以提交80,并删除所有后续存储库。

为什么? 该回购应该用于其他用户的合并。 由于过度的编辑,大量合并作为我提交的内容。 那是由于我的远程分支贴错了标签,在那里3个开发人员被标记为彼此。 我需要重置到这一点,然后向前拉。

我想重新设置基准,如本例所示: 如何在GitHub上删除提交?

但是,git希望我做很多冲突管理。 有没有更简单的方法?


#1楼

其他方式:

签出要还原的分支,然后将本地工作副本重置回您要成为远程服务器上最新提交的提交(此操作之后的所有操作都会再见)。 为此,在SourceTree中,右键单击,然后选择“将BRANCHNAME重置为此提交”。

然后导航到存储库的本地目录并运行以下命令:

git -c diff.mnemonicprefix=false -c core.quotepath=false push -v -f -- tags REPOSITORY_NAME BRANCHNAME:BRANCHNAME

这将删除本地存储库中当前提交之后的所有提交,但仅针对该分支。


#2楼

要撤消最近的提交,我可以这样做:

第一:

git log

获取最新的SHA ID来撤消。

git revert SHA

这将创建一个与提交完全相反的新提交。 然后,您可以推送此新提交以将您的应用恢复到之前的状态,并且git历史记录将相应地显示这些更改。

这对于立即重做刚刚执行的操作非常有帮助,我发现这种情况在我来说更常见。

正如Mike提到的,您还可以执行以下操作:

git revert HEAD

#3楼

git reset --hard <old-commit-id>
git push -f <remote-name> <branch-name>

注意:如下面的注释中所述, 在协作环境中使用此方法很危险:您正在重写历史记录


#4楼

从master进行分支更新时,我注意到有时会单击鼠标,并使分支也合并到master中。 找到了一种解决方法。

如果您的最后一次提交是合并,则需要多一点爱:

git revert -m 1头


#5楼

在github中,简单的方法是在github UI中的branchs选项卡下删除远程分支。 您必须确保删除以下设置以使分支可删除:

  1. 不是默认分支
  2. 没有公开投票要求。
  3. 分支不受保护。

现在,在您的本地存储库中重新创建它以指向上一个提交点。 并将其添加回远程仓库。

git checkout -b master 734c2b9b   # replace with your commit point

然后将本地分支推送到远程

git push -u origin master

重新添加默认分支和分支保护等。


#6楼

大多数建议都假定您需要以某种方式销毁最后20个提交,这就是为什么它意味着“重写历史记录”的原因,但是您不必这样做。

只需从commit#80创建一个新分支,然后继续进行该分支。 其他20个提交将保留在旧的孤立分支上。

如果您绝对希望新分支具有相同的名称,请记住该分支基本上只是标签。 只需将旧分支重命名为其他名称,然后在提交#80处使用所需名称创建新分支。


#7楼

也可以查看过去的提交,因此,如果您不想使用git,则可以创建一个新的提交,并将想要还原的所有内容复制到新的提交中。 这种方法非常耗时且不精确,但是它应该可行。

如何将github存储库回滚到特定提交?相关推荐

  1. git idea 本地历史版本回滚_如何为IDEA项目创建GitHub存储库和本地Git存储库

    有几种方法可以使用IntelliJ IDEA来发布我们在GitHub上编写的代码.在此博客中,我们将介绍两种方法.第一个步骤是最快的一步,您可以在其中创建本地和远程存储库.第二种方法是多步骤,当您要为 ...

  2. github组织存储库使用_为什么我不使用您的GitHub存储库

    github组织存储库使用 by Sam Westreich, PhD 由Sam Westreich博士 为什么我不使用您的GitHub存储库 (Why I'm not using your GitH ...

  3. 从GitHub存储库下载单个文件夹或目录

    如何从GitHub上托管的远程Git存储库中仅下载特定文件夹或目录? 假设示例GitHub存储库位于此处: git@github.com:foobar/Test.git 其目录结构: Test/ ├─ ...

  4. 如何将Git存储库克隆到特定文件夹?

    git clone git@github.com:whatever执行git clone git@github.com:whatever命令git clone git@github.com:whate ...

  5. 2020.2idea怎么创建html项目_如何为IDEA项目创建GitHub存储库和本地Git存储库

    有几种方法可以使用IntelliJ IDEA来发布我们在GitHub上编写的代码.在此博客中,我们将介绍两种方法.第一个步骤是最快的一步,您可以在其中创建本地和远程存储库.第二种方法是多步骤,当您要为 ...

  6. 在GitHub存储库中创建标记

    本文翻译自:Create a tag in a GitHub repository I have a repository in GitHub and I need to tag it. 我在GitH ...

  7. GitHub存储库泄露了API令牌和加密密钥

    导读 北卡罗莱纳州立大学(NCSU)学者的一项研究表明,一些GitHub存储库泄漏API令牌和密码密钥.研究人员分析了分布在数百万存储库中的10亿多个GitHub文件.研究人员使用GitHub搜索AP ...

  8. 如何在github存储库中添加屏幕截图到README?

    本文翻译自:How to add screenshot to READMEs in github repository? Is it possible to place a screenshot in ...

  9. 知道这些用于数据科学和机器学习的GitHub存储库和Reddit主题吗?

    摘要: 5月最热门的GitHub存储库和顶级Reddit讨论,戳进来~ GitHub和Reddit都是比较有趣的平台,在这里,我不仅学习了数据科学的一些最佳应用,而且还了解数据科学家们是如何编程的. ...

最新文章

  1. Oracle 性能相关常用脚本(SQL)
  2. 大系统化小之后,微信如何解决大规模微服务下的难题?
  3. python要学多久-零基础python培训需要学多久?
  4. Spring+Hibernate+Struts2整合所需要的Jar包
  5. 三年开发项目经验总结
  6. shell脚本语之运算符
  7. Android开发中listView的item无法获取焦点
  8. 对于“增霸卡“的介绍跟使用
  9. IPC-610E(电子组件的可接受性)
  10. 计算机xp系统恢复以前设置,如何设置xp系统一键还原
  11. 阿里云域名以及子域名解析教程
  12. 计算机桌面的字有毛边,windows系统屏幕显示的字体发虚有锯齿
  13. 路由守卫 AJAX,vue路由传参与路由守卫
  14. webscraper 爬取二级网页_web scraper 入门到精通之路
  15. 训练营四教官打死网瘾少年案今开庭审理
  16. DataSet与DataType
  17. mysql事务的坑----MyISAM表类型不支持事务操作
  18. 电子信息工程专业考研考什么内容?
  19. 计算机教师年终考核,2021年计算机教师年终考核个人总结.doc
  20. tplink显示网络连接已断开_TP-Link无线路由器经常突然断开连接,如何解决?

热门文章

  1. 中断处理程序上半部和下半部
  2. Android源代码获得方法
  3. 算法-----------计算二叉树的最大深度
  4. https refused 解决方法
  5. 面试常问 Java基础 冒泡排序
  6. Android之工程目录介绍
  7. HBase学习指南之HBase原理和Shell使用
  8. mybatis mapper xml文件的导入方式和查询方式
  9. 红米 Note3 (kenzo)刷入 Lineage OS
  10. iOS9基础知识(OC)笔记