0

我将 git 与 git flow 以及“dev”和“branches”一起使用。我开发了一个基于 dev 的功能,然后在 dev 中进行了一些提交。现在我想在 dev HEAD 上重新定义我的功能。Rebase 工作得很好,但我也隐藏了我的功能的变化。当我运行 gitk 时,一切看起来都很好,但是当我在视图中勾选“All refs”时,它会显示功能分支两次 - 一次正确地重新基于 dev HEAD,而且还显示在它在分支树中的旧位置。我认为它与隐藏有关,因为没有隐藏就不会出现。

变基之前:

A-B-E
   \
    C-D

变基后

A-B-E-C-D

在用 stash 变基后

A-B-E-C-D-stash
   \
    C-D-stash

实际问题:这些提交真的是重复的吗?如果是,我能做些什么呢?

4

1 回答 1

0

您可以看到旧的 pre-rebase 提交,因为它们可以通过 stash 访问。当您更改历史记录时,Git 不会更改提交,它只是存储新的提交。

您可以忽略提交。如果你放下 stash,即使查看所有 refs,你也不会看到它们。下一个git gc(自动或手动)将删除它们。

于 2012-11-16T16:03:38.223 回答