diff --git a/src/plugins/git/gitsettings.cpp b/src/plugins/git/gitsettings.cpp
index 64feea302edc81ef3c0f9414469adfaced37c878..197c13d7249cac3086c6619153048b358cec6b7a 100644
--- a/src/plugins/git/gitsettings.cpp
+++ b/src/plugins/git/gitsettings.cpp
@@ -48,6 +48,7 @@ const QLatin1String GitSettings::gitkOptionsKey("GitKOptions");
 const QLatin1String GitSettings::logDiffKey("LogDiff");
 const QLatin1String GitSettings::repositoryBrowserCmd("RepositoryBrowserCmd");
 const QLatin1String GitSettings::graphLogKey("GraphLog");
+const QLatin1String GitSettings::lastResetIndexKey("LastResetIndex");
 
 GitSettings::GitSettings()
 {
@@ -68,6 +69,7 @@ GitSettings::GitSettings()
     declareKey(logDiffKey, false);
     declareKey(repositoryBrowserCmd, QString());
     declareKey(graphLogKey, false);
+    declareKey(lastResetIndexKey, 0);
 }
 
 QString GitSettings::gitBinaryPath(bool *ok, QString *errorMessage) const
diff --git a/src/plugins/git/gitsettings.h b/src/plugins/git/gitsettings.h
index dcf5fd940e497789fca8d15da92349211aa50db4..33980173b7190d4dd2757deac57db16cf240044a 100644
--- a/src/plugins/git/gitsettings.h
+++ b/src/plugins/git/gitsettings.h
@@ -61,6 +61,7 @@ public:
     static const QLatin1String logDiffKey;
     static const QLatin1String repositoryBrowserCmd;
     static const QLatin1String graphLogKey;
+    static const QLatin1String lastResetIndexKey;
 
     QString gitBinaryPath(bool *ok = 0, QString *errorMessage = 0) const;
 
diff --git a/src/plugins/git/logchangedialog.cpp b/src/plugins/git/logchangedialog.cpp
index 3dba3eb3a73df17465f5e1fca80f750bd8ae3057..f96cb5b137e7279d6ebe1e37e9a94e8041f52a0f 100644
--- a/src/plugins/git/logchangedialog.cpp
+++ b/src/plugins/git/logchangedialog.cpp
@@ -180,6 +180,9 @@ LogChangeDialog::LogChangeDialog(bool isReset, QWidget *parent) :
         m_resetTypeComboBox->addItem(tr("Hard"), QLatin1String("--hard"));
         m_resetTypeComboBox->addItem(tr("Mixed"), QLatin1String("--mixed"));
         m_resetTypeComboBox->addItem(tr("Soft"), QLatin1String("--soft"));
+        GitClient *client = GitPlugin::instance()->gitClient();
+        m_resetTypeComboBox->setCurrentIndex(client->settings()->intValue(
+                                                 GitSettings::lastResetIndexKey));
         popUpLayout->addWidget(m_resetTypeComboBox);
         popUpLayout->addItem(new QSpacerItem(0, 0, QSizePolicy::Expanding, QSizePolicy::Ignored));
     }
@@ -203,7 +206,15 @@ bool LogChangeDialog::runDialog(const QString &repository, const QString &commit
     if (!widget->init(repository, commit, includeRemote))
         return false;
 
-    return QDialog::exec() == QDialog::Accepted;
+    if (QDialog::exec() == QDialog::Accepted) {
+        if (m_resetTypeComboBox) {
+            GitClient *client = GitPlugin::instance()->gitClient();
+            client->settings()->setValue(GitSettings::lastResetIndexKey,
+                                         m_resetTypeComboBox->currentIndex());
+        }
+        return true;
+    }
+    return false;
 }
 
 QString LogChangeDialog::commit() const