git rebase 导致一团糟——我该如何解决这个问题?

标签 git rebase

我试图用交互式 rebase /压缩来简化(“线性化”)我的 git 存储库,但不小心引入了 merge 路径。

目前,它看起来像这样:

*  AAAAAAA (origin/master, master)
|\  
| * BBBBBBB ....
* | CCCCCCC (HEAD) .....
|/  
* DDDDDDD .....
* EEEEEEE .....

etc...

我现在想要实现的是下面的结构(AAAAAAA 和 BBBBBBB 中没有什么重要的,它们是我的分支和 rebase 尝试产生的“垃圾”):

* CCCCCCC (HEAD, origin/master, master)  
* DDDDDDD .....
* EEEEEEE .....

顺便说一句,我是唯一一个使用远程仓库的人,所以改变它的结构没有问题(我知道这可能会导致其他问题,但这不是我的帖子的问题)。

谢谢你的帮助

最佳答案

使用 git rebase -i,您仍然可以通过 pick 和 stash 的关联来实现这一点。

您可以尝试压缩 AAAAAAABBBBBBB 并选择 CCCCCCDDDDDDEEEEEE.

垃圾将被放入CCCCCC

关于git rebase 导致一团糟——我该如何解决这个问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29913184/

相关文章:

Git rebase 失败,因为 : Commit xxxx is a merge but no -m option was given

git - 创建后跟踪分支?

Git:首先倒带头重播

linux - 如何使用git查找文件中特定行的差异历史记录?

git - 如何将新的 git 存储库更改为另一个存储库的分支?

git - 当不进行 cherry-pick 时,之前的 cherry-pick 现在为空

git - 我可以多次 rebase 吗?

git - 在 rebase -i 期间重写提交消息时如何使 git show diff?

git pull 响应消息含义

git - 复古从备份目录创建一个 git 存储库