Is this a bug of the SourceTree in applying Rebase command with conflicting branches, or am I missing something?
This is similar to the question SourceTree – rebase –interactive – Merge conflict aborts rebase with one difference: I am not using --interactive
rebase.
Below is what I experienced few times. First I thought it was my fault of resolving conflicts but it looks like a bug/featrue of the SourceTree itself.
Windows 10. SourceTree v.3.4.13
I want to rebase feature
branch on develop
which have conflicts in few commits. Steps to reproduce:
- Check out
feature
branch - Right-click on the
develop
branch and selectRebase current changes onto develop
- Window pops up:
You now have merge conflicts in your working copy that need to be resolved before continuing ...
. ClickClose
History
view shows:Uncommited changes (detached head)
- Click on it. Some files from the conflict commit of the
feature
branch appear in theStaged files
area and some inUnstaged files
bash-git
terminal shows$ (feature | REBASE 1/2)
(I have 2 commits in thefeature
to rebase)- In the
Unstaged files
select a file with conflicts. Right-click on it and selectResolve using 'Mine'
( in this case ‘Mine’ isdevelop
– branch I am rebasing onto) –> conflict is resolved - Select ‘Actions -> Continue rebase’
- Window invinting to edit the commit message appears. Content: message from the
feature
first commit plus comments:
first commit message
# interactive rebase in progress; onto 8d27b323
# Last command done (1 command done):
# pick 1815a5f7 first commit message
# Next command to do (1 remaining command):
# pick 9708e11b second commit message
# You are currently rebasing branch 'feature' on '8d27b323'.
- Click ‘Ok’
- Window closes. In
History
branchfeature
appears on top ofdevelop
with only one commit !first commit message
- Another window pops up:
You now have merge conflicts in your working copy that need to be resolved before continuing ...
. - Click
Close
Nothing happens! - The second commit
second commit message
does not appear in the rebasedfeature
branch. - Changes from the second commit are not applied
- Terminal shows that rebase has finished:
$ (feature)
Why was the second commit not rebased?
Is this a bug of the SourceTree?
If not, what is the right process in SourceTree to do rebase with conflict resolution?
Thank you,
Dmitry