diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp index aebcb0ebe55a22ce10ccc1f09d0a3b68c587eb90..ecd0e71f4f48ead05f3b10ce2507e309a4d1f442 100644 --- a/src/plugins/git/gitclient.cpp +++ b/src/plugins/git/gitclient.cpp @@ -2839,16 +2839,13 @@ void GitClient::revert(const QStringList &files, bool revertStaging) } } -bool GitClient::synchronousFetch(const QString &workingDirectory, const QString &remote) +void GitClient::fetch(const QString &workingDirectory, const QString &remote) { QStringList arguments(QLatin1String("fetch")); arguments << (remote.isEmpty() ? QLatin1String("--all") : remote); - // Disable UNIX terminals to suppress SSH prompting. - const unsigned flags = VcsBase::VcsBasePlugin::SshPasswordPrompt|VcsBase::VcsBasePlugin::ShowStdOutInLogWindow - |VcsBase::VcsBasePlugin::ShowSuccessMessage; - const Utils::SynchronousProcessResponse resp = synchronousGit(workingDirectory, arguments, flags); - return resp.result == Utils::SynchronousProcessResponse::Finished; + VcsBase::Command *cmd = executeGit(workingDirectory, arguments, 0, true); + connectRepositoryChanged(workingDirectory, cmd); } bool GitClient::executeAndHandleConflicts(const QString &workingDirectory, diff --git a/src/plugins/git/gitclient.h b/src/plugins/git/gitclient.h index 024ed6002818218a4fa84df38b5ece52c01d1695..ef0c1ec31af634142978f106be84ab04497428eb 100644 --- a/src/plugins/git/gitclient.h +++ b/src/plugins/git/gitclient.h @@ -238,7 +238,7 @@ public: bool cloneRepository(const QString &directory, const QByteArray &url); QString vcsGetRepositoryURL(const QString &directory); - bool synchronousFetch(const QString &workingDirectory, const QString &remote); + void fetch(const QString &workingDirectory, const QString &remote); bool synchronousPull(const QString &workingDirectory, bool rebase); bool synchronousPush(const QString &workingDirectory, const QStringList &pushArgs = QStringList()); diff --git a/src/plugins/git/gitplugin.cpp b/src/plugins/git/gitplugin.cpp index 215e9e67d19860e5ea9b7b752db6b459f1b57e88..3384d7f4112b106dee469200908e82fa38f98ae5 100644 --- a/src/plugins/git/gitplugin.cpp +++ b/src/plugins/git/gitplugin.cpp @@ -1075,7 +1075,7 @@ bool GitPlugin::submitEditorAboutToClose() void GitPlugin::fetch() { - m_gitClient->synchronousFetch(currentState().topLevel(), QString()); + m_gitClient->fetch(currentState().topLevel(), QString()); } void GitPlugin::pull() diff --git a/src/plugins/git/remotedialog.cpp b/src/plugins/git/remotedialog.cpp index a027d62bf2d8df1c96263c621b05e75d45b425ca..37ebd29421a4e7919ffc0df70c62a97af1cf7619 100644 --- a/src/plugins/git/remotedialog.cpp +++ b/src/plugins/git/remotedialog.cpp @@ -184,7 +184,7 @@ void RemoteDialog::fetchFromRemote() int row = indexList.at(0).row(); const QString remoteName = m_remoteModel->remoteName(row); - m_remoteModel->client()->synchronousFetch(m_remoteModel->workingDirectory(), remoteName); + m_remoteModel->client()->fetch(m_remoteModel->workingDirectory(), remoteName); } void RemoteDialog::updateButtonState()