tools/git-sync-deps: handle changing origin

TBR=mtklein@google.com

Review URL: https://codereview.chromium.org/1475513004
diff --git a/tools/git-sync-deps b/tools/git-sync-deps
index 92adf4e..c99ae91 100755
--- a/tools/git-sync-deps
+++ b/tools/git-sync-deps
@@ -142,8 +142,11 @@
 
   subprocess.check_call([git, 'fetch', '--quiet'], cwd=directory)
 
-  subprocess.check_call(
-    [git, 'checkout', '--quiet', checkoutable], cwd=directory)
+  if 0 != subprocess.call(
+      [git, 'checkout', '--quiet', checkoutable], cwd=directory):
+      subprocess.check_call([git, 'remote', 'set-url', repo], cwd=directory)
+      subprocess.check_call([git, 'fetch', '--quiet'], cwd=directory)
+      subprocess.check_call([git, 'checkout', '--quiet'], cwd=directory)
 
   if verbose:
     sys.stdout.write('%s\n  @ %s\n' % (directory, checkoutable))  # Success.