diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp
index c4ec4659f039b522270e055864e6cd9f16cff77f..ed553af9d318c9532e225fc02004158c78a16a73 100644
--- a/src/plugins/git/gitclient.cpp
+++ b/src/plugins/git/gitclient.cpp
@@ -2160,12 +2160,13 @@ void GitClient::handleMergeConflicts(const QString &workingDir, const QString &c
 {
     QString message = commit.isEmpty() ? tr("Conflicts detected")
                                        : tr("Conflicts detected with commit %1").arg(commit);
-    QMessageBox mergeOrAbort(QMessageBox::Question, tr("Conflicts Detected"),
-                             message, QMessageBox::Ignore | QMessageBox::Abort);
+    QMessageBox mergeOrAbort(QMessageBox::Question, tr("Conflicts Detected"), message);
     QPushButton *mergeToolButton = mergeOrAbort.addButton(tr("Run &Merge Tool"),
-                                                          QMessageBox::ActionRole);
+                                                          QMessageBox::AcceptRole);
+    mergeOrAbort.addButton(QMessageBox::Ignore);
     if (abortCommand == QLatin1String("rebase"))
-        mergeOrAbort.addButton(tr("&Skip"), QMessageBox::ActionRole);
+        mergeOrAbort.addButton(tr("&Skip"), QMessageBox::RejectRole);
+    mergeOrAbort.addButton(QMessageBox::Abort);
     switch (mergeOrAbort.exec()) {
     case QMessageBox::Abort:
         synchronousAbortCommand(workingDir, abortCommand);