Skip to content

Commit c243438

Browse files
committed
Check for conflicts after reverting a commit
This way we get the usual menu for viewing the conflicts or aborting, like for rebases.
1 parent de16d8f commit c243438

File tree

3 files changed

+8
-7
lines changed

3 files changed

+8
-7
lines changed

Diff for: pkg/gui/controllers/helpers/merge_and_rebase_helper.go

+2
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,8 @@ var conflictStrings = []string{
138138
"fix conflicts",
139139
"Resolve all conflicts manually",
140140
"Merge conflict in file",
141+
"hint: after resolving the conflicts",
142+
"CONFLICT (content):",
141143
}
142144

143145
func isMergeConflictErr(errStr string) bool {

Diff for: pkg/gui/controllers/local_commits_controller.go

+2-1
Original file line numberDiff line numberDiff line change
@@ -868,7 +868,8 @@ func (self *LocalCommitsController) revert(commit *models.Commit) error {
868868
HandleConfirm: func() error {
869869
self.c.LogAction(self.c.Tr.Actions.RevertCommit)
870870
return self.c.WithWaitingStatusSync(self.c.Tr.RevertingStatus, func() error {
871-
if err := self.c.Git().Commit.Revert(commit.Hash); err != nil {
871+
result := self.c.Git().Commit.Revert(commit.Hash)
872+
if err := self.c.Helpers().MergeAndRebase.CheckMergeOrRebase(result); err != nil {
872873
return err
873874
}
874875
return self.afterRevertCommit()

Diff for: pkg/integration/tests/commit/revert_with_conflict_single_commit.go

+4-6
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,9 @@ var RevertWithConflictSingleCommit = NewIntegrationTest(NewIntegrationTestArgs{
3333
Title(Equals("Revert commit")).
3434
Content(MatchesRegexp(`Are you sure you want to revert \w+?`)).
3535
Confirm()
36-
t.ExpectPopup().Alert().
37-
Title(Equals("Error")).
38-
// The exact error message is different on different git versions,
39-
// but they all contain the word 'conflict' somewhere.
40-
Content(Contains("conflict")).
36+
t.ExpectPopup().Menu().
37+
Title(Equals("Conflicts!")).
38+
Select(Contains("View conflicts")).
4139
Confirm()
4240
}).
4341
Lines(
@@ -56,7 +54,7 @@ var RevertWithConflictSingleCommit = NewIntegrationTest(NewIntegrationTestArgs{
5654
t.Views().Options().Content(Contains("View revert options: m"))
5755
t.Views().Information().Content(Contains("Reverting (Reset)"))
5856

59-
t.Views().Files().Focus().
57+
t.Views().Files().IsFocused().
6058
Lines(
6159
Contains("UU myfile").IsSelected(),
6260
).

0 commit comments

Comments
 (0)