summaryrefslogtreecommitdiffstats
path: root/subcmds/branches.py
diff options
context:
space:
mode:
authorLaMont Jones <lamontjones@google.com>2022-01-13 21:08:24 +0000
committerLaMont Jones <lamontjones@google.com>2022-01-21 17:20:21 +0000
commita535ae441824171428877ce877a3b97c38548a85 (patch)
tree8e4834a4773467ea7037e23e46cd2ad4747714c3 /subcmds/branches.py
parent67d6cdf2bc752f02cd294abe3a45811c2019de35 (diff)
downloadgit-repo-a535ae441824171428877ce877a3b97c38548a85.tar.gz
branches: Fix "not in" handling
If the branch is current, or present in less than half of the projects, list which projects it is *in*. Otherwise, correctly detect which projects (by relpath) it is not in. Previously, the "not in" path would incorrectly list all projects. Change-Id: Ia153856f577035a51f538b7bf5d3135b70c69d52 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/328199 Tested-by: LaMont Jones <lamontjones@google.com> Reviewed-by: Xin Li <delphij@google.com>
Diffstat (limited to 'subcmds/branches.py')
-rw-r--r--subcmds/branches.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/subcmds/branches.py b/subcmds/branches.py
index 6d975ed4..7b5decc6 100644
--- a/subcmds/branches.py
+++ b/subcmds/branches.py
@@ -151,7 +151,7 @@ is shown, then the branch appears in all projects.
151 fmt = out.write 151 fmt = out.write
152 paths = [] 152 paths = []
153 non_cur_paths = [] 153 non_cur_paths = []
154 if i.IsSplitCurrent or (in_cnt < project_cnt - in_cnt): 154 if i.IsSplitCurrent or (in_cnt <= project_cnt - in_cnt):
155 in_type = 'in' 155 in_type = 'in'
156 for b in i.projects: 156 for b in i.projects:
157 if not i.IsSplitCurrent or b.current: 157 if not i.IsSplitCurrent or b.current:
@@ -163,9 +163,9 @@ is shown, then the branch appears in all projects.
163 in_type = 'not in' 163 in_type = 'not in'
164 have = set() 164 have = set()
165 for b in i.projects: 165 for b in i.projects:
166 have.add(b.project) 166 have.add(b.project.relpath)
167 for p in projects: 167 for p in projects:
168 if p not in have: 168 if p.relpath not in have:
169 paths.append(p.relpath) 169 paths.append(p.relpath)
170 170
171 s = ' %s %s' % (in_type, ', '.join(paths)) 171 s = ' %s %s' % (in_type, ', '.join(paths))