diff --git a/src/plugins/git/gitversioncontrol.cpp b/src/plugins/git/gitversioncontrol.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..5f403ef2b57d22fdb4cbcae06ad4845bfe3b12e4
--- /dev/null
+++ b/src/plugins/git/gitversioncontrol.cpp
@@ -0,0 +1,104 @@
+/***************************************************************************
+**
+** This file is part of Qt Creator
+**
+** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
+**
+** Contact:  Qt Software Information (qt-info@nokia.com)
+**
+**
+** Non-Open Source Usage
+**
+** Licensees may use this file in accordance with the Qt Beta Version
+** License Agreement, Agreement version 2.2 provided with the Software or,
+** alternatively, in accordance with the terms contained in a written
+** agreement between you and Nokia.
+**
+** GNU General Public License Usage
+**
+** Alternatively, this file may be used under the terms of the GNU General
+** Public License versions 2.0 or 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the packaging
+** of this file.  Please review the following information to ensure GNU
+** General Public Licensing requirements will be met:
+**
+** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
+** http://www.gnu.org/copyleft/gpl.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt GPL Exception
+** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
+**
+***************************************************************************/
+
+#include "gitversioncontrol.h"
+#include "gitclient.h"
+
+namespace Git {
+namespace Internal {
+
+GitVersionControl::GitVersionControl(GitClient *client) :
+    m_enabled(true),
+    m_client(client)
+{
+}
+
+QString GitVersionControl::name() const
+{
+    return QLatin1String("git");
+}
+
+bool GitVersionControl::isEnabled() const
+{
+    return m_enabled;
+}
+
+void GitVersionControl::setEnabled(bool enabled)
+{
+    if (m_enabled != enabled) {
+        m_enabled = enabled;
+        emit enabledChanged(m_enabled);
+    }
+}
+
+bool GitVersionControl::supportsOperation(Operation operation) const
+{
+    bool rc = false;
+    switch (operation) {
+    case AddOperation:
+    case DeleteOperation:
+    case OpenOperation:
+        break;
+    }
+    return rc;
+}
+
+bool GitVersionControl::vcsOpen(const QString & /*fileName*/)
+{
+    return false;
+}
+
+bool GitVersionControl::vcsAdd(const QString & /*fileName*/)
+{
+    return false;
+}
+
+bool GitVersionControl::vcsDelete(const QString & /*fileName*/)
+{
+    // TODO: implement using 'git rm'.
+    return false;
+}
+
+bool GitVersionControl::managesDirectory(const QString &directory) const
+{
+    return !GitClient::findRepositoryForDirectory(directory).isEmpty();
+
+}
+
+QString GitVersionControl::findTopLevelForDirectory(const QString &directory) const
+{
+    return GitClient::findRepositoryForDirectory(directory);
+}
+
+} // Internal
+} // Git
diff --git a/src/plugins/git/gitversioncontrol.h b/src/plugins/git/gitversioncontrol.h
new file mode 100644
index 0000000000000000000000000000000000000000..e12e7736713c9a6b5ed100cef2b1fd705680d3c8
--- /dev/null
+++ b/src/plugins/git/gitversioncontrol.h
@@ -0,0 +1,75 @@
+/***************************************************************************
+**
+** This file is part of Qt Creator
+**
+** Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
+**
+** Contact:  Qt Software Information (qt-info@nokia.com)
+**
+**
+** Non-Open Source Usage
+**
+** Licensees may use this file in accordance with the Qt Beta Version
+** License Agreement, Agreement version 2.2 provided with the Software or,
+** alternatively, in accordance with the terms contained in a written
+** agreement between you and Nokia.
+**
+** GNU General Public License Usage
+**
+** Alternatively, this file may be used under the terms of the GNU General
+** Public License versions 2.0 or 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the packaging
+** of this file.  Please review the following information to ensure GNU
+** General Public Licensing requirements will be met:
+**
+** http://www.fsf.org/licensing/licenses/info/GPLv2.html and
+** http://www.gnu.org/copyleft/gpl.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt GPL Exception
+** version 1.2, included in the file GPL_EXCEPTION.txt in this package.
+**
+***************************************************************************/
+
+#ifndef GITVERSIONCONTROL_H
+#define GITVERSIONCONTROL_H
+
+#include <coreplugin/iversioncontrol.h>
+
+namespace Git {
+namespace Internal {
+
+class GitClient;
+
+// Just a proxy for GitPlugin
+class GitVersionControl : public Core::IVersionControl
+{
+    Q_OBJECT
+public:
+    explicit GitVersionControl(GitClient *plugin);
+
+    virtual QString name() const;
+
+    virtual bool isEnabled() const;
+    virtual void setEnabled(bool enabled);
+
+    bool managesDirectory(const QString &directory) const;
+    virtual QString findTopLevelForDirectory(const QString &directory) const;
+
+    virtual bool supportsOperation(Operation operation) const;
+    virtual bool vcsOpen(const QString &fileName);
+    virtual bool vcsAdd(const QString &fileName);
+    virtual bool vcsDelete(const QString &filename);
+
+signals:
+    void enabledChanged(bool);
+
+private:
+    bool m_enabled;
+    GitClient *m_client;
+};
+
+} // Internal
+} // Git
+
+#endif // GITVERSIONCONTROL_H