repo: fix bug with --standalone-manifest

We were accidentally always setting manifest.standlone in config,
which was messing up behavior for standard use cases.

BUG=gerrit:15160
TEST=manual runs

Change-Id: Ic80f084ae97de5721aced3bb52d3ea9115f8d833
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/320715
Tested-by: Jack Neus <jackneus@google.com>
Reviewed-by: Mike Frysinger <vapier@google.com>
diff --git a/subcmds/init.py b/subcmds/init.py
index 9c6b2ad..53c6ba0 100644
--- a/subcmds/init.py
+++ b/subcmds/init.py
@@ -166,12 +166,14 @@
     standalone_manifest = False
     if opt.standalone_manifest:
       standalone_manifest = True
-    elif not opt.manifest_url:
+      m.config.SetString('manifest.standalone', opt.manifest_url)
+    elif not opt.manifest_url and not opt.manifest_branch:
       # If -u is set and --standalone-manifest is not, then we're not in
       # standalone mode. Otherwise, use config to infer what we were in the last
       # init.
       standalone_manifest = bool(m.config.GetString('manifest.standalone'))
-    m.config.SetString('manifest.standalone', opt.manifest_url)
+    if not standalone_manifest:
+      m.config.SetString('manifest.standalone', None)
 
     self._ConfigureDepth(opt)