首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在不丢失后续数据的情况下删除3天前提交的github上的提交?

要在不丢失后续数据的情况下删除3天前提交的GitHub上的提交,可以按照以下步骤进行操作:

  1. 首先,确保你已经在本地克隆了GitHub仓库,并且已经将其与远程仓库进行了关联。
  2. 打开终端或命令行工具,进入你的本地仓库目录。
  3. 使用以下命令查看最近3天的提交记录:
  4. 使用以下命令查看最近3天的提交记录:
  5. 找到你想要删除的提交的哈希值(commit hash),复制它以备后用。
  6. 运行以下命令来撤销该提交并保留后续数据:
  7. 运行以下命令来撤销该提交并保留后续数据:
  8. 这将创建一个新的提交,撤销了指定的提交内容,但保留了后续提交的更改。
  9. 推送撤销的提交到远程仓库:
  10. 推送撤销的提交到远程仓库:
  11. 这将把撤销的提交推送到远程仓库,确保其他人也能看到这个更改。

通过以上步骤,你可以在不丢失后续数据的情况下删除3天前提交的GitHub上的提交。请注意,这个过程只会删除指定提交的更改,而不会删除提交记录本身。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Github上如何在Fork到的开源项目中提交Pull requests?

如何在 Fork 到的开源项目中提交 Pull requests ?   我们将 Fork 到的开源项目克隆到我们本地计算机中进行修改,把更改通过 Pull requests 到原始的项目中。 ?...输入 git checkout -b fix-bug  切换到创建的分支fix-bug上 ? 再回到github网站上。 ? ? 注意:此时的Pull requests 针对的是原始的项目了。...这就意味着我们这次的修改会直接作用于原始的项目上。 这就是大部分开源项目用来获取贡献者提交更改的一个途径。...即:贡献者首先通过 Fork 项目,之后修改项目后,提交更改前 创建 分支(branch),接着会在 Fork的主分支 和 分支 之间打开一个 Pull requests。 ?...但是并不是所有的 Pull requests 都会被合并,这并不意味着你的修改是有问题的,有时候项目的维护者他就是不鸟你!你也没办法!如下图所示: ?

97930
  • 10 个技巧促使你的 Git 的技能上一个台阶——SitePoint

    在这次教程中,我们尝试如何在有效的时间内充分掌握提供的 Git 特性。 说明:文中一些指令包含指令的部分在方括号中(如:git add -p [file_name])。...02 忽略 Git 文件 你是否对出现在你 Git 源中编译文件(如 .pyc)感到疲倦?或者对添加这些文件至 Git 上忍无可忍?不用舍近求远,这里有一种方式可以告诉 Git 忽视特定的文件和目录。...后面,你意识到这个过程丢失了一些其他的信息并想返回去,或者至少可以再次看下。这就是 git reflog 作用。 一个简单的 git log 命令可以显示最新的提交,上一次的提交,上上次的提交等等。...然而,git reflog是一个被指向提交的列表。记住:这是你系统的局部,不是源的部分,不包含推送的和合并的。 如果执行 git log,我获取的提交信息是源的一部分。...在这种情况下,git stash 可以帮助你。Stash 基本上具有你所有的改变并保存它们以便你后期使用。

    1.1K80

    0494-如何恢复HDFS中节点正常解除授权丢失的数据

    作者:唐辉 1 文档编写目的 在Hadoop集群中提供有主机解除授权和将节点移除集群的操作,正常情况下节点的解除授权不会导致blocks丢失的情况,但是在某些特殊场景中还是会出现小量blocks的丢失,...3.正常解除授权下线可能造成数据丢失的原因分析 4.如何在对DataNode解除授权前调优HDFS 测试环境 1.CM和CDH5.15.1 2.现有集群操作系统RedHat7.2 3.正常下线的节点本地磁盘的数据并未删除...3 重新上线节点恢复数据 该文件blocks 已经3副本丢失2个,还有一个存在已经下线的节点上,下线的节点数据还在本地磁盘上,没有删除,那么该节点重新装回来HDSF能找到吗?...,建议下线前和下线后都需要对副本进行检查,详情查看第5章如何在对DataNode解除授权前调优HDFS 3.网络带宽原因,集群内作业数量大,占用带宽高,导致副本没有拷贝到其他节点,如果有数据平衡操作,需要停止数据平衡操作...5 如何在对DataNode解除授权前调优HDFS 1.减少同时下线的节点数量 建议以较小的数量并行停用DataNode。

    3.7K50

    Git工作流程:如何在团队中协作?

    通常情况下,我们在开发过程中会基于一个主干分支创建一个功能分支进行开发工作,最后将该功能分支合并到主干分支上发布。在合并过程中,如果两个分支都对同一个文件的同一个部分进行了修改,就会产生冲突。 2....1.历史记录概念 Git仓库中的每个提交都有一个唯一的ID,称为提交哈希值(commit hash)。此外,每个提交还包含作者、提交时间、提交信息等元数据,以及修改的文件内容和状态。...同时,也需要注意保护好本地代码库中的历史记录,以免误操作导致数据丢失。 撤销更改: 撤销对文件的修改或删除、撤销尚未提交的更改等。...轻量级标签只是一个指向某个提交的引用,而附注标签则包含了更多的信息,如标签名称、创建者、创建时间、备注等。...同时,也需要注意及时备份本地代码和重要的远程仓库,以避免数据丢失。 Git工作流程: 将Git集成到团队的日常工作流中,包括如何组织Git仓库、如何协作等。

    17710

    分布式版本控制系统 Git 教程

    这么做最显而易见的缺点是中央服务器的单点故障。如果宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。要是中央服务器的磁盘发生故障,碰巧没做备份,或者备份不够及时,就会有丢失数据的风险。...实际上,Git 数据库中保存的信息都是以文件内容的哈希值来索引,而不是文件名。...已暂存(staged) 已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。 已提交(committed) 已提交表示数据已经安全的保存在本地数据库中。 ...这里推荐一下 Github 的开源项目:https://github.com/github/gitignore 在这里,你可以找到很多常用的模板,如:Java、Nodejs、C++ 的 .gitignore...$ git checkout HEAD 删除添加.gitignore文件前错误提交的文件 $ git rm -r --cached . $ git add . $ git commit

    1.6K70

    如何优雅的玩转 Git

    这么做最显而易见的缺点是中央服务器的单点故障。如果宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。要是中央服务器的磁盘发生故障,碰巧没做备份,或者备份不够及时,就会有丢失数据的风险。...实际上,Git 数据库中保存的信息都是以文件内容的哈希值来索引,而不是文件名。...这个过程在所有操作系统上都是相似的。 首先,你需要确认自己是否已经拥有密钥。 默认情况下,用户的 SSH 密钥存储在其 ~/.ssh 目录下。...所以,使用规范化的 Issue 模板来引导提问者提问,可以大大减轻开发者的负担。 # Github Issue 模板 如何在 Github Issue 平台上创建 Issue 模板呢?...它对一般的提交来说并没有什么用;然而对那些会自动产生默认信息的提交,如提交信息模板、合并提交、压缩提交和修订提交等非常实用。 你可以结合提交模板来使用它,动态地插入信息。

    1.5K30

    Solr学习笔记 - 关于近实时搜索

    Commits 发送到Solr的数据在提交到索引之前是不能搜索的。这样做的原因是,在一些情况下,提交比较慢,并且多个更新请求应该进行隔离,以避免覆盖数据。...默认情况下,提交操作会导致“hard commit”所有Lucene索引文件保存到稳定存储(磁盘)上。...请参阅下面的“transaction log”讨论,了解在没有hard commit的情况下如何恢复数据。...在发生不适当的关闭(电源丢失、JVM崩溃、kill -9等)时,任何写入tlog但在Solr停止时还没有通过hard commit提交的文档都将在启动时重新播放。因此数据不会丢失。...令人困惑的一点是事务日志中包含多少数据。tlog不包含所有文档,只包含上次硬提交之后的文档。旧的事务日志文件在不再需要时被删除。 上面隐含的意思是,如果禁用了硬提交,事务日志将永远增长。

    4.6K10

    day10 | Git的正确使用姿势与最佳实践 | 第三届字节跳动青训营笔记

    工作上用的比较多的就是Git了,像Git衍生出的Github,Gitee,Gitlab等等,当然也有其他的公司用Svn。...缺点: 本地不存储版本管理的概念,所有提交都只能联上服务器后才可以提交。 分支上的支持不够好,对于大型项目团队合作比较困难。 用户本地不保存所有版本的代码,如果服务端故障容易导致历史版本的丢失。...分布式开发,每个库都是完整的提交历史,支持本地提交,强调个体 分支管理功能强大,方便团队合作,多人协同开发 校验和机制保证完整性,-般只添加数据,很少执行删除操作,不容易导致代码丢失 缺点: 相对SVN...commit的修改 合并commit 修改具体的commit message 删除某个commit filter - branch 该命令可以指定删除所有提交中的某个文件或者全局修改邮箱地址等操作 2.10...Reflog reflog是用于记录操作日志,防止误操作后数据丢失,通过reflog来找到丢失的数据,手动将日志设置为过期。

    1.1K30

    每个 Tester 都应该知道的 Git 命令

    ://github.com//foo.git foo Git 分支 如何在 Git 仓库中创建一个新的分支 当您想开发一个新需求时,通常会在 Git 中创建一个新分支。...如果要删除源上的远程分支,请执行以下操作: git push origin : 相关文章: How to install git and generate SSH Keys...您可以像这样提交: git commit-m “更新内容描述” 撤消提交 以下命令将撤消您最近的提交,并将这些更改放回暂存区,这样您就不会丢失任何内容: git reset --soft HEAD~1...当使用 git pull 时,git 会自动合并其他提交,而不是查看它们。如果不密切管理分支,可能会遇到冲突。...重新基础将一个分支的更改重新写入另一个分支,而不创建新的提交。

    1.7K20

    IDEA中Git版本回退终极指南:Reset与Revert双方案详解

    方案:整体改写历史 通过移动HEAD指针直接回退到目标版本,会删除后续提交记录,适用于本地或需强制同步远程的场景。...) Keep 回退:当你希望恢复到某个提交的版本,但又不丢失本地修改时使用(恢复版本的文件的本地内容需要手动选择要还是丢,麻烦不推荐) 1.4、强制推送远程仓库 回退后本地仓库版本低于远程,需执行强制推送...在强制推送远程仓库前,都可以通过更新代码恢复上面的版本回退 方式一(不推荐) git push --force 是强制推送命令,它会将本地分支的内容强行推送到远程仓库,覆盖远程分支的历史记录。...使用此命令时,如果远程分支的提交历史与本地分支不同,推送操作仍会进行,并且不会进行任何检查,可能会丢失远程仓库中的更改。因此,这个命令需要小心使用,尤其在多人协作的情况下,可能会覆盖他人的更改。...# 获取目标commit_id(前7位即可) 方式三 idea中直接选择历史版本右击选择复制修订号 2.2、执行回退 三种不同的回退模式,上面已经详细介绍了 # 彻底回退(删除工作区+暂存区修改

    30710

    Git的正确使用姿势与最佳实践|青训营笔记

    ,各位同学可以依照笔记复习git操作,或者后续结合目录进行查漏补缺。...存储附注标签信息 Refs(存储对应的Commit Id) 事实上在完成了readme的提交之后,refs目录也发生了变化。...filter --branch 该命令可以指定删除所有提交中的某个文件或者全局修改邮箱地址等操作 1.3.5 悬空Objects 通过git fsck --lost-found命令可以查看当前是否有悬空的...1.3.6 Git GC GC 通过git gc命令,可以删除一些不需要的object,以及对object进行一些打包压缩来减少仓库的体积 Reflog reflog用于记录操作日志,防止误操作之后数据丢失...,通过reflog来找到丢失的数据,手动将日志设置为过期 指定时间 git gc prune=now指的是修剪多久之前的对象,默认是两周前 再次执行tree .git命令查看目录结构有很大变化 1.3.7

    65320

    Mysql面试一定会遇到的财务问题!

    面试者如何回答: 在财务计算场景中,确实存在数据错乱的风险,特别是在多线程环境、数据库操作以及UI界面显示后超时提交等情况下。...解决方案:使用同步机制(如锁)来确保同一时间只有一个线程能够访问共享数据。 数据库操作导致的数据错乱: 问题描述:数据库操作可能因网络延迟、事务失败等原因导致数据不一致。...UI展示后超时提交: 问题描述:用户在UI界面上查看数据后,由于网络或其他原因,提交操作超时,可能导致数据不一致。 解决方案:在提交操作前,先检查数据是否与展示时一致。...解决方案:在可能的情况下,使用乘法来替换除法运算,以减少精度丢失的风险。 其他解决方案: 使用事务保证ACID特性(同上)。 更新时使用悲观锁(同上)。...数据只标记删除:不直接删除数据,而是将其标记为已删除,以便在需要时进行恢复或审计。 记录详细日志方便溯源:记录所有关键操作的日志,以便在出现问题时进行追溯和排查。

    3200

    Raft 算法原理及其在 CMQ 中的应用(上)

    如匹配则直接写入Entry,返回成功;否则删除不匹配的日志,返回失败。校验是通过在AppendEntry RPC中携带待写入Entry的前一条entry信息完成。...同步过程中每次日志的写入均需刷盘以保证宕机时数据不丢失。...(一致性) 具体证明如下: 1)Leader Completeness:给定Term上提交的日志一定存在于后续更高Term的 Leader上。...(日志不丢失) 选举出的Leader一定包含当前已提交所有日志:已提交的日志存在于大多数节点上,而同意选举的前提是候选者的日志必须够全或更新。...一个不包含已提交日志的节点必然不会得到大多数节点的选票(这些节点上都有已提交的日志,不满足日志足够全的前提),也就无法成为Leader。 Leader节点不修改和删除已存在日志(算法的约束)。

    6.3K11

    【GIT版本控制】--常见问题与解决方案

    二、恢复丢失的提交 恢复丢失的Git提交可能会发生在不小心删除提交或分支、强制推送(force push)后丢失历史记录等情况下。...以下是一些常见问题和相应的解决方案,用于恢复丢失的Git提交: 常见问题: 提交被删除或分支被覆盖: 你可能不小心删除了一个提交,或者通过强制推送覆盖了一个分支,导致提交丢失。...git reflog 查找丢失的提交,然后可以使用git cherry-pick或git branch等命令将其恢复到一个新的分支或分支上。...查看GitHub或GitLab等远程仓库: 如果你的丢失的提交曾经被推送到远程仓库(如GitHub或GitLab),可以在远程仓库的历史记录中查找并恢复它们。...恢复丢失的Git提交通常需要小心操作,以避免进一步的数据丢失。最好的做法是定期备份Git仓库,并谨慎操作以避免提交的丢失。

    37730

    【图文详解】MySQL系列之redo log、undo log和binlog详解

    redo log:Write Ahead Log策略 事务提交时,先写重做日志再修改页;当由于发生宕机而导致数据丢失时,就可以通过重做日志来完成数据的恢复。...,版本号就是当前版本号,再插入一条新的记录 如事务2把name字段更新 update table set name = 'new test' where id = 1; 原来的记录被标记删除,删除版本号为...2,并插入新记录,创建版本号为2 idnamecreate versiondelete version 1test12 1new test2 删除操作:把事务版本作为删除版本号 如事务3把记录删除 delete...这种方式即使系统崩溃也不会丢失任何数据,但是因为每次提交都写入磁盘,IO的性能较差。...binlog 通过追加的方式记录,当文件大小大于给定值后,后续的日志会记录到新的文件上 适用场景redo log适用于崩溃恢复(crash-safe)binlog适用于主从复制和数据恢复 由binlog

    17.5K65

    Git 从入门到精通,这篇包教包会!

    这么做最显而易见的缺点是中央服务器的单点故障。如果宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。要是中央服务器的磁盘发生故障,碰巧没做备份,或者备份不够及时,就会有丢失数据的风险。...这里推荐一下 Github 的开源项目:https://github.com/github/gitignore 在这里,你可以找到很多常用的模板,如:Java、Nodejs、C++ 的 .gitignore...实际上,Git 数据库中保存的信息都是以文件内容的哈希值来索引,而不是文件名。...已删除补丁(patch) 如果某人在 GitHub 上给你发了一个 pull request, 但是然后他删除了他自己的原始 fork, 你将没法克隆他们的提交(commit)或使用 git am。...如果事实证明你不小心回移(move back)了提交(commit), reflog 会包含你不小心回移前 master 上指向的提交(0254ea7)。

    2.6K20

    Git 操作规范

    假如需求列表比较复杂,可再引入 devlop 分支,比如 feature 代表某次较大版本,devlop 是基于本版本的拆分,后续 devlop 的新建与合并也将是对焦对应 feature 而非 uat-sync...若为紧急部署分支,如临时修复的 BUG,推荐命名为 hotfixes-{20190101}。...当然,任务区分版本只是代码版本管理的方案之一,其他方案的规范不见得适用本节提交修改git commit -m {desc} 提交前请务必自行 review 检查一次。...合并分支合并前不要盲目自信,比如没有删除测试代码、遗漏功能未完成等,在 code review 中需检查代码规范(如命名/公共方法/容错和性能考虑等)。...若合并部署后才发现有代码丢失等情况,小组长可在本地修改 uat 分支代码直接进行 push,并务必写清提交描述。

    13410

    开发工具Tools·Git 从入门到精通1

    这么做最显而易见的缺点是中央服务器的单点故障。如果宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。要是中央服务器的磁盘发生故障,碰巧没做备份,或者备份不够及时,就会有丢失数据的风险。...这里推荐一下 Github 的开源项目:https://github.com/github/gitignore 在这里,你可以找到很多常用的模板,如:Java、Nodejs、C++ 的 .gitignore...实际上,Git 数据库中保存的信息都是以文件内容的哈希值来索引,而不是文件名。...已删除补丁(patch) 如果某人在 GitHub 上给你发了一个 pull request, 但是然后他删除了他自己的原始 fork, 你将没法克隆他们的提交(commit)或使用 git am。...如果事实证明你不小心回移(move back)了提交(commit), reflog 会包含你不小心回移前 master 上指向的提交(0254ea7)。

    1.2K30
    领券