为什么提交在 github 上可见,但在本地代表中不可见?

科里

我注意到在执行了一些 git 操作后,一些提交丢失了,正如预期的那样,但在 github 上仍然可见并出现错误: This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

重现我所做的:

  1. 存储库现在是: A -> B -> C
  2. 软重置提交 A
  3. 重做提交BC作为B(mod)C(mod)
  4. 存储库现在是: A -> B(mod) -> C(mod)
  5. 强制推送到 github
  6. 现在提交B并且C无法在代表历史记录中看到,但在 github 上可以看到上面指定的错误

(我可以看到的示例链接:https://github.com/user/rep/commit/B
https://github.com/user/rep/commit/B(mod)出现了预期的修改)

  • 什么可能导致这种情况?
  • 是否代表包含提交BC不?如果是,我该如何删除它们/清理代表?

谢谢

哑光

分支或标签是适用于单个提交的名称。该提交是一个命名提交。使提交保持活动状态的是它是命名提交的父项,或父项的父项,或... [等等]。

好的。将你的分支重置回 A 意味着分支名称现在适用于 A,而不是 B 或 C。所以没有什么可以让 B 或 C 继续存活。

但它们也不会立即被摧毁。策略是这样的提交一直保留到它们被垃圾收集为止。如果您使用 ,reflog您会发现它们仍然存在于您的本地机器上。这更像是在您的计算机上,您不只是删除文件;您将文件放入垃圾箱,稍后清空垃圾箱。好吧,Git 最终会清空它的垃圾。

您现在可以通过强制垃圾回收将它们从您的机器中删除但是你不能在 GitHub 上这样做;它不属于你。如果你只是等待,它们最终会在 GitHub 上被销毁。

如果这件事对您来说很紧急,请提取到您的本地存储库并完全删除 GitHub 存储库。创建新的 GitHub 存储库并将您的本地镜像到它。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么 base.pm 在 github 上的文件列表中不可见?

来自 css 的背景图片在 github 上不可见,但在 localhost 中可见

为什么图像在Firefox中可见但在Chrome中不可见?

为什么Bootstrap轮播字幕在开发中可见但在生产中不可见?

推送的分支在github上不可见

表格中的不可见/可见提交按钮

为什么某些提交显示为“在GitHub上已提交”?

为什么只有Linux master分支在Github上可见?

什么是PostgreSQL中的不可见行?

为什么在标题背景上添加的颜色不可见?

Github页面,帖子不可见

为什么 RecyclerView 不会显示在设备上,但在布局检查器中可见?

为什么我的svg在div中不可见

为什么WindowsIdentity类在.NET Core中不可见

为什么约束不在公共模式中不可见?

为什么ImageView在布局中不可见?

为什么锚标记中的文本不可见?

为什么 AmazonSNSClientBuilder 的 withRegion() 不可见?

为什么输入的密码不可见?

java JMenuBar不可见?为什么?

为什么我的徽标在所有浏览器中可见,但在打印视图中不可见

为什么我不能在 github 中推送恢复的提交?

Github 可见操作

MySql中的可见索引和不可见索引是什么

为什么快捷方式在桌面屏幕上可见,而在进入“用户”>“桌面”时却不可见

DataTable记录未提交,在搜索中不可见

reCAPTCHA不可见-重新提交表格

为什么我可以在GitHub上看到提交但在本地存储库中看不到它?

在Emacs中,不可见文本的反面是什么?