summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--project.py208
-rw-r--r--subcmds/init.py2
2 files changed, 105 insertions, 105 deletions
diff --git a/project.py b/project.py
index 9af2d631..70a29a4b 100644
--- a/project.py
+++ b/project.py
@@ -85,7 +85,7 @@ def _ProjectHooks():
85 global _project_hook_list 85 global _project_hook_list
86 if _project_hook_list is None: 86 if _project_hook_list is None:
87 d = os.path.realpath(os.path.abspath(os.path.dirname(__file__))) 87 d = os.path.realpath(os.path.abspath(os.path.dirname(__file__)))
88 d = os.path.join(d , 'hooks') 88 d = os.path.join(d, 'hooks')
89 _project_hook_list = [os.path.join(d, x) for x in os.listdir(d)] 89 _project_hook_list = [os.path.join(d, x) for x in os.listdir(d)]
90 return _project_hook_list 90 return _project_hook_list
91 91
@@ -183,28 +183,28 @@ class ReviewableBranch(object):
183class StatusColoring(Coloring): 183class StatusColoring(Coloring):
184 def __init__(self, config): 184 def __init__(self, config):
185 Coloring.__init__(self, config, 'status') 185 Coloring.__init__(self, config, 'status')
186 self.project = self.printer('header', attr = 'bold') 186 self.project = self.printer('header', attr='bold')
187 self.branch = self.printer('header', attr = 'bold') 187 self.branch = self.printer('header', attr='bold')
188 self.nobranch = self.printer('nobranch', fg = 'red') 188 self.nobranch = self.printer('nobranch', fg='red')
189 self.important = self.printer('important', fg = 'red') 189 self.important = self.printer('important', fg='red')
190 190
191 self.added = self.printer('added', fg = 'green') 191 self.added = self.printer('added', fg='green')
192 self.changed = self.printer('changed', fg = 'red') 192 self.changed = self.printer('changed', fg='red')
193 self.untracked = self.printer('untracked', fg = 'red') 193 self.untracked = self.printer('untracked', fg='red')
194 194
195 195
196class DiffColoring(Coloring): 196class DiffColoring(Coloring):
197 def __init__(self, config): 197 def __init__(self, config):
198 Coloring.__init__(self, config, 'diff') 198 Coloring.__init__(self, config, 'diff')
199 self.project = self.printer('header', attr = 'bold') 199 self.project = self.printer('header', attr='bold')
200 200
201class _Annotation: 201class _Annotation(object):
202 def __init__(self, name, value, keep): 202 def __init__(self, name, value, keep):
203 self.name = name 203 self.name = name
204 self.value = value 204 self.value = value
205 self.keep = keep 205 self.keep = keep
206 206
207class _CopyFile: 207class _CopyFile(object):
208 def __init__(self, src, dest, abssrc, absdest): 208 def __init__(self, src, dest, abssrc, absdest):
209 self.src = src 209 self.src = src
210 self.dest = dest 210 self.dest = dest
@@ -232,7 +232,7 @@ class _CopyFile:
232 except IOError: 232 except IOError:
233 _error('Cannot copy file %s to %s', src, dest) 233 _error('Cannot copy file %s to %s', src, dest)
234 234
235class _LinkFile: 235class _LinkFile(object):
236 def __init__(self, src, dest, abssrc, absdest): 236 def __init__(self, src, dest, abssrc, absdest):
237 self.src = src 237 self.src = src
238 self.dest = dest 238 self.dest = dest
@@ -259,9 +259,9 @@ class _LinkFile:
259class RemoteSpec(object): 259class RemoteSpec(object):
260 def __init__(self, 260 def __init__(self,
261 name, 261 name,
262 url = None, 262 url=None,
263 review = None, 263 review=None,
264 revision = None): 264 revision=None):
265 self.name = name 265 self.name = name
266 self.url = url 266 self.url = url
267 self.review = review 267 self.review = review
@@ -521,15 +521,15 @@ class Project(object):
521 relpath, 521 relpath,
522 revisionExpr, 522 revisionExpr,
523 revisionId, 523 revisionId,
524 rebase = True, 524 rebase=True,
525 groups = None, 525 groups=None,
526 sync_c = False, 526 sync_c=False,
527 sync_s = False, 527 sync_s=False,
528 clone_depth = None, 528 clone_depth=None,
529 upstream = None, 529 upstream=None,
530 parent = None, 530 parent=None,
531 is_derived = False, 531 is_derived=False,
532 dest_branch = None): 532 dest_branch=None):
533 """Init a Project object. 533 """Init a Project object.
534 534
535 Args: 535 Args:
@@ -586,8 +586,8 @@ class Project(object):
586 self.linkfiles = [] 586 self.linkfiles = []
587 self.annotations = [] 587 self.annotations = []
588 self.config = GitConfig.ForRepository( 588 self.config = GitConfig.ForRepository(
589 gitdir = self.gitdir, 589 gitdir=self.gitdir,
590 defaults = self.manifest.globalConfig) 590 defaults=self.manifest.globalConfig)
591 591
592 if self.worktree: 592 if self.worktree:
593 self.work_git = self._GitGetByExec(self, bare=False, gitdir=gitdir) 593 self.work_git = self._GitGetByExec(self, bare=False, gitdir=gitdir)
@@ -880,8 +880,8 @@ class Project(object):
880 cmd.append('--') 880 cmd.append('--')
881 p = GitCommand(self, 881 p = GitCommand(self,
882 cmd, 882 cmd,
883 capture_stdout = True, 883 capture_stdout=True,
884 capture_stderr = True) 884 capture_stderr=True)
885 has_diff = False 885 has_diff = False
886 for line in p.process.stdout: 886 for line in p.process.stdout:
887 if not has_diff: 887 if not has_diff:
@@ -966,7 +966,7 @@ class Project(object):
966 return None 966 return None
967 967
968 def UploadForReview(self, branch=None, 968 def UploadForReview(self, branch=None,
969 people=([],[]), 969 people=([], []),
970 auto_topic=False, 970 auto_topic=False,
971 draft=False, 971 draft=False,
972 dest_branch=None): 972 dest_branch=None):
@@ -1027,13 +1027,13 @@ class Project(object):
1027 ref_spec = ref_spec + '%' + ','.join(rp) 1027 ref_spec = ref_spec + '%' + ','.join(rp)
1028 cmd.append(ref_spec) 1028 cmd.append(ref_spec)
1029 1029
1030 if GitCommand(self, cmd, bare = True).Wait() != 0: 1030 if GitCommand(self, cmd, bare=True).Wait() != 0:
1031 raise UploadError('Upload failed') 1031 raise UploadError('Upload failed')
1032 1032
1033 msg = "posted to %s for %s" % (branch.remote.review, dest_branch) 1033 msg = "posted to %s for %s" % (branch.remote.review, dest_branch)
1034 self.bare_git.UpdateRef(R_PUB + branch.name, 1034 self.bare_git.UpdateRef(R_PUB + branch.name,
1035 R_HEADS + branch.name, 1035 R_HEADS + branch.name,
1036 message = msg) 1036 message=msg)
1037 1037
1038 1038
1039## Sync ## 1039## Sync ##
@@ -1134,7 +1134,7 @@ class Project(object):
1134 and not self._RemoteFetch(initial=is_new, quiet=quiet, alt_dir=alt_dir, 1134 and not self._RemoteFetch(initial=is_new, quiet=quiet, alt_dir=alt_dir,
1135 current_branch_only=current_branch_only, 1135 current_branch_only=current_branch_only,
1136 no_tags=no_tags)): 1136 no_tags=no_tags)):
1137 return False 1137 return False
1138 1138
1139 if self.worktree: 1139 if self.worktree:
1140 self._InitMRef() 1140 self._InitMRef()
@@ -1330,7 +1330,7 @@ class Project(object):
1330 1330
1331 if cnt_mine > 0 and self.rebase: 1331 if cnt_mine > 0 and self.rebase:
1332 def _dorebase(): 1332 def _dorebase():
1333 self._Rebase(upstream = '%s^1' % last_mine, onto = revid) 1333 self._Rebase(upstream='%s^1' % last_mine, onto=revid)
1334 self._CopyAndLinkFiles() 1334 self._CopyAndLinkFiles()
1335 syncbuf.later2(self, _dorebase) 1335 syncbuf.later2(self, _dorebase)
1336 elif local_changes: 1336 elif local_changes:
@@ -1385,11 +1385,11 @@ class Project(object):
1385 return True 1385 return True
1386 1386
1387 all_refs = self.bare_ref.all 1387 all_refs = self.bare_ref.all
1388 if (R_HEADS + name) in all_refs: 1388 if R_HEADS + name in all_refs:
1389 return GitCommand(self, 1389 return GitCommand(self,
1390 ['checkout', name, '--'], 1390 ['checkout', name, '--'],
1391 capture_stdout = True, 1391 capture_stdout=True,
1392 capture_stderr = True).Wait() == 0 1392 capture_stderr=True).Wait() == 0
1393 1393
1394 branch = self.GetBranch(name) 1394 branch = self.GetBranch(name)
1395 branch.remote = self.GetRemote(self.remote.name) 1395 branch.remote = self.GetRemote(self.remote.name)
@@ -1416,8 +1416,8 @@ class Project(object):
1416 1416
1417 if GitCommand(self, 1417 if GitCommand(self,
1418 ['checkout', '-b', branch.name, revid], 1418 ['checkout', '-b', branch.name, revid],
1419 capture_stdout = True, 1419 capture_stdout=True,
1420 capture_stderr = True).Wait() == 0: 1420 capture_stderr=True).Wait() == 0:
1421 branch.Save() 1421 branch.Save()
1422 return True 1422 return True
1423 return False 1423 return False
@@ -1463,8 +1463,8 @@ class Project(object):
1463 1463
1464 return GitCommand(self, 1464 return GitCommand(self,
1465 ['checkout', name, '--'], 1465 ['checkout', name, '--'],
1466 capture_stdout = True, 1466 capture_stdout=True,
1467 capture_stderr = True).Wait() == 0 1467 capture_stderr=True).Wait() == 0
1468 1468
1469 def AbandonBranch(self, name): 1469 def AbandonBranch(self, name):
1470 """Destroy a local topic branch. 1470 """Destroy a local topic branch.
@@ -1498,8 +1498,8 @@ class Project(object):
1498 1498
1499 return GitCommand(self, 1499 return GitCommand(self,
1500 ['branch', '-D', name], 1500 ['branch', '-D', name],
1501 capture_stdout = True, 1501 capture_stdout=True,
1502 capture_stderr = True).Wait() == 0 1502 capture_stderr=True).Wait() == 0
1503 1503
1504 def PruneHeads(self): 1504 def PruneHeads(self):
1505 """Prune any topic branches already merged into upstream. 1505 """Prune any topic branches already merged into upstream.
@@ -1516,7 +1516,7 @@ class Project(object):
1516 rev = self.GetRevisionId(left) 1516 rev = self.GetRevisionId(left)
1517 if cb is not None \ 1517 if cb is not None \
1518 and not self._revlist(HEAD + '...' + rev) \ 1518 and not self._revlist(HEAD + '...' + rev) \
1519 and not self.IsDirty(consider_untracked = False): 1519 and not self.IsDirty(consider_untracked=False):
1520 self.work_git.DetachHead(HEAD) 1520 self.work_git.DetachHead(HEAD)
1521 kill.append(cb) 1521 kill.append(cb)
1522 1522
@@ -1549,7 +1549,7 @@ class Project(object):
1549 1549
1550 kept = [] 1550 kept = []
1551 for branch in kill: 1551 for branch in kill:
1552 if (R_HEADS + branch) in left: 1552 if R_HEADS + branch in left:
1553 branch = self.GetBranch(branch) 1553 branch = self.GetBranch(branch)
1554 base = branch.LocalMerge 1554 base = branch.LocalMerge
1555 if not base: 1555 if not base:
@@ -1599,8 +1599,8 @@ class Project(object):
1599 def parse_gitmodules(gitdir, rev): 1599 def parse_gitmodules(gitdir, rev):
1600 cmd = ['cat-file', 'blob', '%s:.gitmodules' % rev] 1600 cmd = ['cat-file', 'blob', '%s:.gitmodules' % rev]
1601 try: 1601 try:
1602 p = GitCommand(None, cmd, capture_stdout = True, capture_stderr = True, 1602 p = GitCommand(None, cmd, capture_stdout=True, capture_stderr=True,
1603 bare = True, gitdir = gitdir) 1603 bare=True, gitdir=gitdir)
1604 except GitError: 1604 except GitError:
1605 return [], [] 1605 return [], []
1606 if p.Wait() != 0: 1606 if p.Wait() != 0:
@@ -1612,8 +1612,8 @@ class Project(object):
1612 os.write(fd, p.stdout) 1612 os.write(fd, p.stdout)
1613 os.close(fd) 1613 os.close(fd)
1614 cmd = ['config', '--file', temp_gitmodules_path, '--list'] 1614 cmd = ['config', '--file', temp_gitmodules_path, '--list']
1615 p = GitCommand(None, cmd, capture_stdout = True, capture_stderr = True, 1615 p = GitCommand(None, cmd, capture_stdout=True, capture_stderr=True,
1616 bare = True, gitdir = gitdir) 1616 bare=True, gitdir=gitdir)
1617 if p.Wait() != 0: 1617 if p.Wait() != 0:
1618 return [], [] 1618 return [], []
1619 gitmodules_lines = p.stdout.split('\n') 1619 gitmodules_lines = p.stdout.split('\n')
@@ -1646,8 +1646,8 @@ class Project(object):
1646 cmd = ['ls-tree', rev, '--'] 1646 cmd = ['ls-tree', rev, '--']
1647 cmd.extend(paths) 1647 cmd.extend(paths)
1648 try: 1648 try:
1649 p = GitCommand(None, cmd, capture_stdout = True, capture_stderr = True, 1649 p = GitCommand(None, cmd, capture_stdout=True, capture_stderr=True,
1650 bare = True, gitdir = gitdir) 1650 bare=True, gitdir=gitdir)
1651 except GitError: 1651 except GitError:
1652 return [] 1652 return []
1653 if p.Wait() != 0: 1653 if p.Wait() != 0:
@@ -1682,24 +1682,24 @@ class Project(object):
1682 continue 1682 continue
1683 1683
1684 remote = RemoteSpec(self.remote.name, 1684 remote = RemoteSpec(self.remote.name,
1685 url = url, 1685 url=url,
1686 review = self.remote.review, 1686 review=self.remote.review,
1687 revision = self.remote.revision) 1687 revision=self.remote.revision)
1688 subproject = Project(manifest = self.manifest, 1688 subproject = Project(manifest=self.manifest,
1689 name = name, 1689 name=name,
1690 remote = remote, 1690 remote=remote,
1691 gitdir = gitdir, 1691 gitdir=gitdir,
1692 objdir = objdir, 1692 objdir=objdir,
1693 worktree = worktree, 1693 worktree=worktree,
1694 relpath = relpath, 1694 relpath=relpath,
1695 revisionExpr = self.revisionExpr, 1695 revisionExpr=self.revisionExpr,
1696 revisionId = rev, 1696 revisionId=rev,
1697 rebase = self.rebase, 1697 rebase=self.rebase,
1698 groups = self.groups, 1698 groups=self.groups,
1699 sync_c = self.sync_c, 1699 sync_c=self.sync_c,
1700 sync_s = self.sync_s, 1700 sync_s=self.sync_s,
1701 parent = self, 1701 parent=self,
1702 is_derived = True) 1702 is_derived=True)
1703 result.append(subproject) 1703 result.append(subproject)
1704 result.extend(subproject.GetDerivedSubprojects()) 1704 result.extend(subproject.GetDerivedSubprojects())
1705 return result 1705 return result
@@ -1855,9 +1855,9 @@ class Project(object):
1855 GitCommand(self, ['fetch', '--unshallow', name] + shallowfetch.split(), 1855 GitCommand(self, ['fetch', '--unshallow', name] + shallowfetch.split(),
1856 bare=True, ssh_proxy=ssh_proxy).Wait() 1856 bare=True, ssh_proxy=ssh_proxy).Wait()
1857 if depth: 1857 if depth:
1858 self.config.SetString('repo.shallowfetch', ' '.join(spec)) 1858 self.config.SetString('repo.shallowfetch', ' '.join(spec))
1859 else: 1859 else:
1860 self.config.SetString('repo.shallowfetch', None) 1860 self.config.SetString('repo.shallowfetch', None)
1861 1861
1862 ok = False 1862 ok = False
1863 for _i in range(2): 1863 for _i in range(2):
@@ -2039,7 +2039,7 @@ class Project(object):
2039 if self._allrefs: 2039 if self._allrefs:
2040 raise GitError('%s checkout %s ' % (self.name, rev)) 2040 raise GitError('%s checkout %s ' % (self.name, rev))
2041 2041
2042 def _CherryPick(self, rev, quiet=False): 2042 def _CherryPick(self, rev):
2043 cmd = ['cherry-pick'] 2043 cmd = ['cherry-pick']
2044 cmd.append(rev) 2044 cmd.append(rev)
2045 cmd.append('--') 2045 cmd.append('--')
@@ -2047,7 +2047,7 @@ class Project(object):
2047 if self._allrefs: 2047 if self._allrefs:
2048 raise GitError('%s cherry-pick %s ' % (self.name, rev)) 2048 raise GitError('%s cherry-pick %s ' % (self.name, rev))
2049 2049
2050 def _Revert(self, rev, quiet=False): 2050 def _Revert(self, rev):
2051 cmd = ['revert'] 2051 cmd = ['revert']
2052 cmd.append('--no-edit') 2052 cmd.append('--no-edit')
2053 cmd.append(rev) 2053 cmd.append(rev)
@@ -2064,7 +2064,7 @@ class Project(object):
2064 if GitCommand(self, cmd).Wait() != 0: 2064 if GitCommand(self, cmd).Wait() != 0:
2065 raise GitError('%s reset --hard %s ' % (self.name, rev)) 2065 raise GitError('%s reset --hard %s ' % (self.name, rev))
2066 2066
2067 def _Rebase(self, upstream, onto = None): 2067 def _Rebase(self, upstream, onto=None):
2068 cmd = ['rebase'] 2068 cmd = ['rebase']
2069 if onto is not None: 2069 if onto is not None:
2070 cmd.extend(['--onto', onto]) 2070 cmd.extend(['--onto', onto])
@@ -2119,7 +2119,7 @@ class Project(object):
2119 2119
2120 m = self.manifest.manifestProject.config 2120 m = self.manifest.manifestProject.config
2121 for key in ['user.name', 'user.email']: 2121 for key in ['user.name', 'user.email']:
2122 if m.Has(key, include_defaults = False): 2122 if m.Has(key, include_defaults=False):
2123 self.config.SetString(key, m.GetString(key)) 2123 self.config.SetString(key, m.GetString(key))
2124 if self.manifest.IsMirror: 2124 if self.manifest.IsMirror:
2125 self.config.SetString('core.bare', 'true') 2125 self.config.SetString('core.bare', 'true')
@@ -2199,7 +2199,7 @@ class Project(object):
2199 if cur != '' or self.bare_ref.get(ref) != self.revisionId: 2199 if cur != '' or self.bare_ref.get(ref) != self.revisionId:
2200 msg = 'manifest set to %s' % self.revisionId 2200 msg = 'manifest set to %s' % self.revisionId
2201 dst = self.revisionId + '^0' 2201 dst = self.revisionId + '^0'
2202 self.bare_git.UpdateRef(ref, dst, message = msg, detach = True) 2202 self.bare_git.UpdateRef(ref, dst, message=msg, detach=True)
2203 else: 2203 else:
2204 remote = self.GetRemote(self.remote.name) 2204 remote = self.GetRemote(self.remote.name)
2205 dst = remote.ToLocal(self.revisionExpr) 2205 dst = remote.ToLocal(self.revisionExpr)
@@ -2343,10 +2343,10 @@ class Project(object):
2343 '-z', 2343 '-z',
2344 '--others', 2344 '--others',
2345 '--exclude-standard'], 2345 '--exclude-standard'],
2346 bare = False, 2346 bare=False,
2347 gitdir=self._gitdir, 2347 gitdir=self._gitdir,
2348 capture_stdout = True, 2348 capture_stdout=True,
2349 capture_stderr = True) 2349 capture_stderr=True)
2350 if p.Wait() == 0: 2350 if p.Wait() == 0:
2351 out = p.stdout 2351 out = p.stdout
2352 if out: 2352 if out:
@@ -2361,9 +2361,9 @@ class Project(object):
2361 p = GitCommand(self._project, 2361 p = GitCommand(self._project,
2362 cmd, 2362 cmd,
2363 gitdir=self._gitdir, 2363 gitdir=self._gitdir,
2364 bare = False, 2364 bare=False,
2365 capture_stdout = True, 2365 capture_stdout=True,
2366 capture_stderr = True) 2366 capture_stderr=True)
2367 try: 2367 try:
2368 out = p.process.stdout.read() 2368 out = p.process.stdout.read()
2369 r = {} 2369 r = {}
@@ -2469,10 +2469,10 @@ class Project(object):
2469 cmdv.extend(args) 2469 cmdv.extend(args)
2470 p = GitCommand(self._project, 2470 p = GitCommand(self._project,
2471 cmdv, 2471 cmdv,
2472 bare = self._bare, 2472 bare=self._bare,
2473 gitdir=self._gitdir, 2473 gitdir=self._gitdir,
2474 capture_stdout = True, 2474 capture_stdout=True,
2475 capture_stderr = True) 2475 capture_stderr=True)
2476 r = [] 2476 r = []
2477 for line in p.process.stdout: 2477 for line in p.process.stdout:
2478 if line[-1] == '\n': 2478 if line[-1] == '\n':
@@ -2522,10 +2522,10 @@ class Project(object):
2522 cmdv.extend(args) 2522 cmdv.extend(args)
2523 p = GitCommand(self._project, 2523 p = GitCommand(self._project,
2524 cmdv, 2524 cmdv,
2525 bare = self._bare, 2525 bare=self._bare,
2526 gitdir=self._gitdir, 2526 gitdir=self._gitdir,
2527 capture_stdout = True, 2527 capture_stdout=True,
2528 capture_stderr = True) 2528 capture_stderr=True)
2529 if p.Wait() != 0: 2529 if p.Wait() != 0:
2530 raise GitError('%s %s: %s' % ( 2530 raise GitError('%s %s: %s' % (
2531 self._project.name, 2531 self._project.name,
@@ -2590,9 +2590,9 @@ class _Later(object):
2590class _SyncColoring(Coloring): 2590class _SyncColoring(Coloring):
2591 def __init__(self, config): 2591 def __init__(self, config):
2592 Coloring.__init__(self, config, 'reposync') 2592 Coloring.__init__(self, config, 'reposync')
2593 self.project = self.printer('header', attr = 'bold') 2593 self.project = self.printer('header', attr='bold')
2594 self.info = self.printer('info') 2594 self.info = self.printer('info')
2595 self.fail = self.printer('fail', fg='red') 2595 self.fail = self.printer('fail', fg='red')
2596 2596
2597class SyncBuffer(object): 2597class SyncBuffer(object):
2598 def __init__(self, config, detach_head=False): 2598 def __init__(self, config, detach_head=False):
@@ -2654,16 +2654,16 @@ class MetaProject(Project):
2654 """ 2654 """
2655 def __init__(self, manifest, name, gitdir, worktree): 2655 def __init__(self, manifest, name, gitdir, worktree):
2656 Project.__init__(self, 2656 Project.__init__(self,
2657 manifest = manifest, 2657 manifest=manifest,
2658 name = name, 2658 name=name,
2659 gitdir = gitdir, 2659 gitdir=gitdir,
2660 objdir = gitdir, 2660 objdir=gitdir,
2661 worktree = worktree, 2661 worktree=worktree,
2662 remote = RemoteSpec('origin'), 2662 remote=RemoteSpec('origin'),
2663 relpath = '.repo/%s' % name, 2663 relpath='.repo/%s' % name,
2664 revisionExpr = 'refs/heads/master', 2664 revisionExpr='refs/heads/master',
2665 revisionId = None, 2665 revisionId=None,
2666 groups = None) 2666 groups=None)
2667 2667
2668 def PreSync(self): 2668 def PreSync(self):
2669 if self.Exists: 2669 if self.Exists:
@@ -2674,20 +2674,20 @@ class MetaProject(Project):
2674 self.revisionExpr = base 2674 self.revisionExpr = base
2675 self.revisionId = None 2675 self.revisionId = None
2676 2676
2677 def MetaBranchSwitch(self, target): 2677 def MetaBranchSwitch(self):
2678 """ Prepare MetaProject for manifest branch switch 2678 """ Prepare MetaProject for manifest branch switch
2679 """ 2679 """
2680 2680
2681 # detach and delete manifest branch, allowing a new 2681 # detach and delete manifest branch, allowing a new
2682 # branch to take over 2682 # branch to take over
2683 syncbuf = SyncBuffer(self.config, detach_head = True) 2683 syncbuf = SyncBuffer(self.config, detach_head=True)
2684 self.Sync_LocalHalf(syncbuf) 2684 self.Sync_LocalHalf(syncbuf)
2685 syncbuf.Finish() 2685 syncbuf.Finish()
2686 2686
2687 return GitCommand(self, 2687 return GitCommand(self,
2688 ['update-ref', '-d', 'refs/heads/default'], 2688 ['update-ref', '-d', 'refs/heads/default'],
2689 capture_stdout = True, 2689 capture_stdout=True,
2690 capture_stderr = True).Wait() == 0 2690 capture_stderr=True).Wait() == 0
2691 2691
2692 2692
2693 @property 2693 @property
diff --git a/subcmds/init.py b/subcmds/init.py
index b1fcb69c..b73de71c 100644
--- a/subcmds/init.py
+++ b/subcmds/init.py
@@ -233,7 +233,7 @@ to update the working directory files.
233 sys.exit(1) 233 sys.exit(1)
234 234
235 if opt.manifest_branch: 235 if opt.manifest_branch:
236 m.MetaBranchSwitch(opt.manifest_branch) 236 m.MetaBranchSwitch()
237 237
238 syncbuf = SyncBuffer(m.config) 238 syncbuf = SyncBuffer(m.config)
239 m.Sync_LocalHalf(syncbuf) 239 m.Sync_LocalHalf(syncbuf)