问题标签 [git-dangling]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
116 浏览

git - 修剪来自 GitHub fork 的悬空提交

我在 GitHub 上创建了一个 repo。

我将提交(其提交消息包含对原始仓库中问题的引用)推送到我的 fork。

我在 rebase、rewording 等时多次推送相同的提交。

因此,我将相同代码更改的不同版本推送到我的 fork,但只有最新版本在任何分支中,而旧版本都是过时的悬空提交。

我什至从我的 reflog 中删除了悬空提交并登录我的本地克隆。

然而,悬空提交仍然在我托管在 GitHub 上的 fork 的克隆中。原始仓库中的问题仍然显示我推送的每个引用提交,即使只有最新的提交是有用的。

如何在 GitHub 上获取我的 fork 以删除那些悬空提交,从而在每个引用的问题中只显示一个提交?

见:https ://github.com/gradle/gradle-java-modules/issues/2

0 投票
3 回答
145 浏览

git - 如何从分支 git-commit 到分离的 HEAD?

我的ref HEAD指向分支foo,指向提交123abc;我有一些分阶段的工作。

如何git commit工作,移动HEAD 到新创建的提交,但不推进分支

(因此:离开foo点到123abc

是否可以使用单个git命令来完成?

0 投票
1 回答
315 浏览

git - git fsck 结合 --lost-found 和 --unreachable

我发现了很多关于 的有趣帖子git fsck,所以我想对它们进行一些实验。首先,我在这个问题之前阅读的所有资料:

我从这个 repo 开始:

r分离HEADa. 然后我想重新定位mastertest但我有一些未分级的更改,所以我做了:

获得(我没有显示r,但它仍然存在):

接下来我运行:

第一个问题

为什么只有--lost-found版本返回r提交?为什么不可达之间显示cd之前?rebase我以为我理解阅读链接问题的区别,但我显然遗漏了一些东西。我仍然有完整的 reflog,但我猜你不需要它,因为所有提交(除了与 相关的stash)都被引用了。


我知道我应该创建另一个帖子,但第二个问题是部分相关的。我出于好奇尝试了:

第二个问题

结合这两个选项,我得到了所有无法访问的提交(而不仅仅是 and 的--lost-found并集--unreachable),这是非常出乎意料的。为什么它会这样?