diff --git a/gclient.py b/gclient.py
index 7a13a5d..208a431 100755
--- a/gclient.py
+++ b/gclient.py
@@ -1052,14 +1052,9 @@
         scm = gclient_scm.CreateSCM(dep.url, self.root_dir, dep.name)
         actual_url = scm.GetActualRemoteURL()
         if actual_url and not scm.DoesRemoteURLMatch():
-          gclient_utils.AddWarning('''
-################################################################################
-################################### WARNING! ###################################
-################################################################################
-
+          raise gclient_utils.Error('''
 Your .gclient file seems to be broken. The requested URL is different from what
-is actually checked out in %(checkout_path)s. In the future this will be an
-error.
+is actually checked out in %(checkout_path)s.
 
 Expected: %(expected_url)s (%(expected_scm)s)
 Actual:   %(actual_url)s (%(actual_scm)s)
@@ -1068,10 +1063,6 @@
 it or fix the checkout. If you're managing your own git checkout in
 %(checkout_path)s but the URL in .gclient is for an svn repository, you probably
 want to set 'managed': False in .gclient.
-
-################################################################################
-################################################################################
-################################################################################
 '''  % {'checkout_path': os.path.join(self.root_dir, dep.name),
         'expected_url': dep.url,
         'expected_scm': gclient_scm.GetScmName(dep.url),
@@ -1254,6 +1245,9 @@
     """
     if not self.dependencies:
       raise gclient_utils.Error('No solution specified')
+
+    self._CheckConfig()
+
     revision_overrides = {}
     # It's unnecessary to check for revision overrides for 'recurse'.
     # Save a few seconds by not calling _EnforceRevisions() in that case.
@@ -1328,7 +1322,6 @@
             gclient_utils.rmtree(e_dir)
       # record the current list of entries for next time
       self._SaveEntries()
-    self._CheckConfig()
     return 0
 
   def PrintRevInfo(self):
