How to combine group of local commits to single push in IDEA?
在这个想法中,我正在努力推动一些承诺。
我有一个要求,在远程服务器上,它看起来像单个操作。
我点击按下并看到下面的窗口
我本想在这里看到"壁球"复选框,但没看到。
请帮帮我。
- 无法给出想法建议,但压缩是交互式重新平衡或合并的一部分,而不是提交。试试看那里。
你可以用钢筋网来做。转到VCS/Git/Rebase。然后选择交互式选项。它将向您显示一个提交列表,您可以在其中选择要挤压的提交。
单击"开始重新平衡"后,它将提示您为挤压的提交输入一条提交消息。完成之后,您可以使用push对话框推送压缩的提交。
有关Intellij中的REBASE的更多信息,请参阅。
- 阅读这篇Git工具-重写历史文章,了解进入"Rebase Branch"对话的"ont Field"中的内容也会有所帮助:例如,可以使用HEAD~3选择最后3次提交。
- 当您将一组提交压缩在一起时,这些提交的各个细节是否都丢失了?最后看起来像是一个大承诺吗?
- @ycomp是的,Interactive Rebase重写了历史记录,因此单个压缩的提交将丢失,并在其位置创建一个新的单一提交。
- 谢谢,你能解开壁球吗?
- @我从来没有这样做过,但这是可能的。请参阅以下SO文章:stackoverflow.com/q/10260151/1291150、stackoverflow.com/q/134882/1291150
- 嗯,在这之前有一个对话框,它会告诉您使用HEAD~2符号来处理最后两个提交。那真是一种魅力。stackoverflow.com/questions/35018704/…
对我来说,使用intellij最简单的方法是:
- 转到Log选项卡,选择要挤压的提交
- 右键单击并选择Reset Branch to this commit。
- 选择mixin选项以防止您的更改被提交。
- 提交您的更改,不要忘记检查Amend commit选项
有一种新的方法:
版本控制->日志->右键单击提交->Interactively rebase from here,然后可以选择选取/挤压其余提交。
- 这种方法的问题在于,无法为多个提交选择"挤压",并且一个接一个地执行它会变得很乏味。
- @dmitryserdiuk您可以按住Shift键单击选择要挤压的提交,然后右键单击->选择挤压。