diff options
| author | Conley Owens <cco3@android.com> | 2014-08-26 21:11:39 +0000 |
|---|---|---|
| committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2014-08-26 21:11:40 +0000 |
| commit | bf0b0cbc2f40572bc0a72f187647c6409b92928c (patch) | |
| tree | c31b3bf438d210a353839b80ee05b4f44a5c2aed /subcmds/branches.py | |
| parent | 3a10968a702a2b80ba03e18739d28af40d219912 (diff) | |
| parent | 588142dfcb464a0db9ebc7b323ab2338d8f730de (diff) | |
| download | git-repo-bf0b0cbc2f40572bc0a72f187647c6409b92928c.tar.gz | |
Merge "Provide detail print-out when not all projects of a branch are current."
Diffstat (limited to 'subcmds/branches.py')
| -rw-r--r-- | subcmds/branches.py | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/subcmds/branches.py b/subcmds/branches.py index f714c1e8..2902684a 100644 --- a/subcmds/branches.py +++ b/subcmds/branches.py | |||
| @@ -47,6 +47,10 @@ class BranchInfo(object): | |||
| 47 | return self.current > 0 | 47 | return self.current > 0 |
| 48 | 48 | ||
| 49 | @property | 49 | @property |
| 50 | def IsSplitCurrent(self): | ||
| 51 | return self.current != 0 and self.current != len(self.projects) | ||
| 52 | |||
| 53 | @property | ||
| 50 | def IsPublished(self): | 54 | def IsPublished(self): |
| 51 | return self.published > 0 | 55 | return self.published > 0 |
| 52 | 56 | ||
| @@ -139,10 +143,14 @@ is shown, then the branch appears in all projects. | |||
| 139 | if in_cnt < project_cnt: | 143 | if in_cnt < project_cnt: |
| 140 | fmt = out.write | 144 | fmt = out.write |
| 141 | paths = [] | 145 | paths = [] |
| 142 | if in_cnt < project_cnt - in_cnt: | 146 | non_cur_paths = [] |
| 147 | if i.IsSplitCurrent or (in_cnt < project_cnt - in_cnt): | ||
| 143 | in_type = 'in' | 148 | in_type = 'in' |
| 144 | for b in i.projects: | 149 | for b in i.projects: |
| 145 | paths.append(b.project.relpath) | 150 | if not i.IsSplitCurrent or b.current: |
| 151 | paths.append(b.project.relpath) | ||
| 152 | else: | ||
| 153 | non_cur_paths.append(b.project.relpath) | ||
| 146 | else: | 154 | else: |
| 147 | fmt = out.notinproject | 155 | fmt = out.notinproject |
| 148 | in_type = 'not in' | 156 | in_type = 'not in' |
| @@ -154,13 +162,19 @@ is shown, then the branch appears in all projects. | |||
| 154 | paths.append(p.relpath) | 162 | paths.append(p.relpath) |
| 155 | 163 | ||
| 156 | s = ' %s %s' % (in_type, ', '.join(paths)) | 164 | s = ' %s %s' % (in_type, ', '.join(paths)) |
| 157 | if width + 7 + len(s) < 80: | 165 | if not i.IsSplitCurrent and (width + 7 + len(s) < 80): |
| 166 | fmt = out.current if i.IsCurrent else fmt | ||
| 158 | fmt(s) | 167 | fmt(s) |
| 159 | else: | 168 | else: |
| 160 | fmt(' %s:' % in_type) | 169 | fmt(' %s:' % in_type) |
| 170 | fmt = out.current if i.IsCurrent else out.write | ||
| 161 | for p in paths: | 171 | for p in paths: |
| 162 | out.nl() | 172 | out.nl() |
| 163 | fmt(width*' ' + ' %s' % p) | 173 | fmt(width*' ' + ' %s' % p) |
| 174 | fmt = out.write | ||
| 175 | for p in non_cur_paths: | ||
| 176 | out.nl() | ||
| 177 | fmt(width*' ' + ' %s' % p) | ||
| 164 | else: | 178 | else: |
| 165 | out.write(' in all projects') | 179 | out.write(' in all projects') |
| 166 | out.nl() | 180 | out.nl() |
