-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Low
-
None
-
Affects Version/s: 1.8.3
-
Component/s: Git
-
Severity 3 - Minor
When using interactive rebase to squash > 3 commits, SourceTree seems to think it has done it correctly, but looking at the commits afterwards it is clear it has only managed to squash some of the commits.
- Create a new Git repository containing an empty text file
- Create several (I used 5) commits, each adding text to the text file
- Right click the very first commit and choose "Rebase children..."
- Select the commit at the top and repeatedly press "Squash with previous" at the bottom until only one commit is left
- Select "OK"
Expected behaviour: We are left with two commits: the first commit of an empty file, and a second commit which contains all the changes made in the first 5 commits.
Actual: I get 4 commits: The first of an empty file, the next two commits as they were before the rebase, and a 4th commit which contains the rest of the changes, squashed.
I first experienced this with > 10 commits and each time it seemed to only squash 3 commits. I am able to work around this repeatedly entering the rebase screen or using command line.