【问题标题】:Intellij - How to squash local branch onlyIntellij - 如何仅压缩本地分支
【发布时间】:2016-05-03 07:16:38
【问题描述】:
在 Intellij 中使用 Git 时,如何压缩本地分支的所有提交?我在变基分支窗口中使用什么设置?
我尝试将 Onto 设置为 local/master 并将 From 设置为我的分支,但随后它会尝试将我所做的每次提交的主更改合并到我的分支中,即使我通常每天早上将我的分支重新设置为 master ...所以应该没有冲突。然而,它几乎总是会发现冲突并导致合并问题。我只想压缩分支提交和消息,所以当我推送到 Github 时,它只会看到一个。
【问题讨论】:
标签:
git
intellij-idea
intellij-14
git-squash
【解决方案1】:
可能会有点不舒服,但是你可以使用 HEAD 的 git 表示法~
所以在“Onto”字段中,你会写下你想要包含的提交数量
喜欢:
在这个例子中,我有 4 个(最后 4 个)提交,我想合并为 1 个。
在打开的对话框中,条目按顺序列出,因此您需要
用投递箱在第一个之后压扁所有。 (我做了第一个
改写,但不需要,因为会有一个消息更改对话框
无论如何,为了挤压,所以它可以留在'pick'上)
然后只是一个合并提交的新消息,你就完成了。
【解决方案2】:
如果您想要“git merge -squash”之类的东西,意味着将一个分支合并到另一个分支(可能是“master”),其中一个提交包含所有更改,您可以使用 Intellij 中的“Merge Changes...”选项。只需双击 shift 并输入“Merge Changes”。在打开的对话框中选择要合并的分支,然后选择“Squash commit”选项。