summaryrefslogtreecommitdiffstats
path: root/subcmds/sync.py
diff options
context:
space:
mode:
Diffstat (limited to 'subcmds/sync.py')
-rw-r--r--subcmds/sync.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/subcmds/sync.py b/subcmds/sync.py
index 21e0899a..79ffcf51 100644
--- a/subcmds/sync.py
+++ b/subcmds/sync.py
@@ -23,6 +23,7 @@ from git_command import GIT
23from command import Command, MirrorSafeCommand 23from command import Command, MirrorSafeCommand
24from error import RepoChangedException, GitError 24from error import RepoChangedException, GitError
25from project import R_HEADS 25from project import R_HEADS
26from progress import Progress
26 27
27class Sync(Command, MirrorSafeCommand): 28class Sync(Command, MirrorSafeCommand):
28 common = True 29 common = True
@@ -71,12 +72,16 @@ revision is temporarily needed.
71 72
72 def _Fetch(self, *projects): 73 def _Fetch(self, *projects):
73 fetched = set() 74 fetched = set()
75 pm = Progress('Fetching projects', len(projects))
74 for project in projects: 76 for project in projects:
77 pm.update()
78
75 if project.Sync_NetworkHalf(): 79 if project.Sync_NetworkHalf():
76 fetched.add(project.gitdir) 80 fetched.add(project.gitdir)
77 else: 81 else:
78 print >>sys.stderr, 'error: Cannot fetch %s' % project.name 82 print >>sys.stderr, 'error: Cannot fetch %s' % project.name
79 sys.exit(1) 83 sys.exit(1)
84 pm.end()
80 return fetched 85 return fetched
81 86
82 def Execute(self, opt, args): 87 def Execute(self, opt, args):
@@ -130,12 +135,14 @@ revision is temporarily needed.
130 missing.append(project) 135 missing.append(project)
131 self._Fetch(*missing) 136 self._Fetch(*missing)
132 137
138 pm = Progress('Syncing work tree', len(all))
133 for project in all: 139 for project in all:
140 pm.update()
134 if project.worktree: 141 if project.worktree:
135 if not project.Sync_LocalHalf( 142 if not project.Sync_LocalHalf(
136 detach_head=opt.detach_head): 143 detach_head=opt.detach_head):
137 sys.exit(1) 144 sys.exit(1)
138 145 pm.end()
139 146
140def _VerifyTag(project): 147def _VerifyTag(project):
141 gpg_dir = os.path.expanduser('~/.repoconfig/gnupg') 148 gpg_dir = os.path.expanduser('~/.repoconfig/gnupg')