Description
When performing an interactive rebase and marking a commit as Squash, Fork does not preserve or merge the squashed commit's message. The resulting combined commit ends up with only the message of the previous commit (the one being squashed into). That is the expected behavior of Fixup, not Squash.
Steps to reproduce
- Create a branch with at least two commits:
- Commit A:
First commit message
- Commit B (on top of A):
Second commit message
- Start an interactive rebase covering both commits.
- Mark commit B as Squash.
- Apply / start the rebase.
Expected behavior
Git's squash keeps both messages: the previous commit's message and the squashed commit's message are combined (with the CLI you get an editor pre-filled with both to edit). Commit B's message should not be lost.
Actual behavior
The resulting commit's message is just First commit message. Commit B's message (Second commit message) is discarded. Squash produces the same result as Fixup.
Environment
- Fork version: 2.20.1.0
- OS: Windows 11
- Git version: 2.50.1.windows.1
Description
When performing an interactive rebase and marking a commit as Squash, Fork does not preserve or merge the squashed commit's message. The resulting combined commit ends up with only the message of the previous commit (the one being squashed into). That is the expected behavior of Fixup, not Squash.
Steps to reproduce
First commit messageSecond commit messageExpected behavior
Git's
squashkeeps both messages: the previous commit's message and the squashed commit's message are combined (with the CLI you get an editor pre-filled with both to edit). Commit B's message should not be lost.Actual behavior
The resulting commit's message is just
First commit message. Commit B's message (Second commit message) is discarded. Squash produces the same result as Fixup.Environment