From 1ef3d9dff3c03208ebfd193a5e23e8fdc84c75e2 Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Wed, 5 Nov 2014 17:53:57 +0100 Subject: [PATCH] Subversion: Bump minimum subversion version to 1.7.0 or later Change-Id: Iaca84fb6b5c218f37ce415e72d409893c2306254 Reviewed-by: Orgad Shaneh --- doc/src/howto/creator-vcs.qdoc | 2 +- src/plugins/subversion/subversionclient.cpp | 6 +---- src/plugins/subversion/subversionplugin.cpp | 25 ++++----------------- src/plugins/subversion/subversionplugin.h | 2 +- 4 files changed, 7 insertions(+), 28 deletions(-) diff --git a/doc/src/howto/creator-vcs.qdoc b/doc/src/howto/creator-vcs.qdoc index 02abcec556b..3b29a6e4ef1 100644 --- a/doc/src/howto/creator-vcs.qdoc +++ b/doc/src/howto/creator-vcs.qdoc @@ -65,7 +65,7 @@ \row \li Subversion \li \l{http://subversion.apache.org/} - \li Subversion version 1.6.17 and later + \li Subversion version 1.7.0 and later \endtable \section1 Setting Up Version Control Systems diff --git a/src/plugins/subversion/subversionclient.cpp b/src/plugins/subversion/subversionclient.cpp index 0f1408a333f..028f0e037ff 100644 --- a/src/plugins/subversion/subversionclient.cpp +++ b/src/plugins/subversion/subversionclient.cpp @@ -234,11 +234,7 @@ void SubversionClient::diff(const QString &workingDir, const QStringList &files, const QStringList &extraOptions) { QStringList args(extraOptions); - Version v = svnVersion(); - - // --internal-diff is new in v1.7.0 - if (v.majorVersion > 1 || (v.majorVersion == 1 && v.minorVersion >= 7)) - args.append(QLatin1String("--internal-diff")); + args.append(QLatin1String("--internal-diff")); const bool hasAuth = settings()->hasAuthentication(); const QString userName = hasAuth ? settings()->stringValue(SubversionSettings::userKey) : QString(); diff --git a/src/plugins/subversion/subversionplugin.cpp b/src/plugins/subversion/subversionplugin.cpp index 9d0f1ecd82f..8776c50e6a0 100644 --- a/src/plugins/subversion/subversionplugin.cpp +++ b/src/plugins/subversion/subversionplugin.cpp @@ -1188,7 +1188,7 @@ bool SubversionPlugin::managesDirectory(const QString &directory, QString *topLe * parents may be svn:externals. */ QDir parentDir = dir; while (!parentDir.isRoot()) { - if (checkSVNSubDir(parentDir, QLatin1String("wc.db"))) { + if (checkSVNSubDir(parentDir)) { if (topLevel) *topLevel = parentDir.absolutePath(); return true; @@ -1197,24 +1197,7 @@ bool SubversionPlugin::managesDirectory(const QString &directory, QString *topLe break; } - /* Subversion < 1.7 has ".svn" directory in each directory - * it manages. The top level is the first directory - * under the directory that does not have a ".svn".*/ - if (!checkSVNSubDir(dir)) - return false; - - if (topLevel) { - QDir lastDirectory = dir; - for (parentDir = lastDirectory; - !parentDir.isRoot() && parentDir.cdUp(); - lastDirectory = parentDir) { - if (!checkSVNSubDir(parentDir)) { - *topLevel = lastDirectory.absolutePath(); - break; - } - } - } - return true; + return false; } bool SubversionPlugin::managesFile(const QString &workingDirectory, const QString &fileName) const @@ -1227,14 +1210,14 @@ bool SubversionPlugin::managesFile(const QString &workingDirectory, const QStrin } // Check whether SVN management subdirs exist. -bool SubversionPlugin::checkSVNSubDir(const QDir &directory, const QString &fileName) const +bool SubversionPlugin::checkSVNSubDir(const QDir &directory) const { const int dirCount = m_svnDirectories.size(); for (int i = 0; i < dirCount; i++) { const QDir svnDir(directory.absoluteFilePath(m_svnDirectories.at(i))); if (!svnDir.exists()) continue; - if (!fileName.isEmpty() && !svnDir.exists(fileName)) + if (!svnDir.exists(QLatin1String("wc.db"))) continue; return true; } diff --git a/src/plugins/subversion/subversionplugin.h b/src/plugins/subversion/subversionplugin.h index b85e36591b3..5964794f2fe 100644 --- a/src/plugins/subversion/subversionplugin.h +++ b/src/plugins/subversion/subversionplugin.h @@ -152,7 +152,7 @@ private: bool enableAnnotationContextMenu = false); void svnStatus(const QString &workingDir, const QString &relativePath = QString()); void svnUpdate(const QString &workingDir, const QString &relativePath = QString()); - bool checkSVNSubDir(const QDir &directory, const QString &fileName = QString()) const; + bool checkSVNSubDir(const QDir &directory) const; void startCommit(const QString &workingDir, const QStringList &files = QStringList()); inline SubversionControl *subVersionControl() const;