Skip to content

Commit 94cd488

Browse files
committed
git 2.47 use short id of len 9.
1 parent ac2b53c commit 94cd488

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

scripts/compare-llama-bench.py

+12-10
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,8 @@
126126
cursor = connection.cursor()
127127
builds = cursor.execute("SELECT DISTINCT build_commit FROM test;").fetchall()
128128

129+
commit_short_len = len(builds[0][0])
130+
129131
try:
130132
repo = git.Repo(".", search_parent_directories=True)
131133
except git.InvalidGitRepositoryError:
@@ -138,11 +140,11 @@ def find_parent_in_data(commit: git.Commit):
138140
seen_hexsha8 = set()
139141
while heap:
140142
depth, current_commit = heapq.heappop(heap)
141-
current_hexsha8 = commit.hexsha[:8]
143+
current_hexsha8 = commit.hexsha[:commit_short_len]
142144
if (current_hexsha8,) in builds:
143145
return current_hexsha8
144146
for parent in commit.parents:
145-
parent_hexsha8 = parent.hexsha[:8]
147+
parent_hexsha8 = parent.hexsha[:commit_short_len]
146148
if parent_hexsha8 not in seen_hexsha8:
147149
seen_hexsha8.add(parent_hexsha8)
148150
heapq.heappush(heap, (depth + 1, parent))
@@ -156,9 +158,9 @@ def get_all_parent_hexsha8s(commit: git.Commit):
156158

157159
while unvisited:
158160
current_commit = unvisited.pop(0)
159-
visited.append(current_commit.hexsha[:8])
161+
visited.append(current_commit.hexsha[:commit_short_len])
160162
for parent in current_commit.parents:
161-
if parent.hexsha[:8] not in visited:
163+
if parent.hexsha[:commit_short_len] not in visited:
162164
unvisited.append(parent)
163165

164166
return visited
@@ -169,10 +171,10 @@ def get_commit_name(hexsha8):
169171
if repo is None:
170172
return hexsha8
171173
for h in repo.heads:
172-
if h.commit.hexsha[:8] == hexsha8:
174+
if h.commit.hexsha[:commit_short_len] == hexsha8:
173175
return h.name
174176
for t in repo.tags:
175-
if t.commit.hexsha[:8] == hexsha8:
177+
if t.commit.hexsha[:commit_short_len] == hexsha8:
176178
return t.name
177179
return hexsha8
178180

@@ -183,13 +185,13 @@ def get_commit_hexsha8(name):
183185
return None
184186
for h in repo.heads:
185187
if h.name == name:
186-
return h.commit.hexsha[:8]
188+
return h.commit.hexsha[:commit_short_len]
187189
for t in repo.tags:
188190
if t.name == name:
189-
return t.commit.hexsha[:8]
191+
return t.commit.hexsha[:commit_short_len]
190192
for c in repo.iter_commits("--all"):
191-
if c.hexsha[:8] == name[:8]:
192-
return c.hexsha[:8]
193+
if c.hexsha[:commit_short_len] == name[:commit_short_len]:
194+
return c.hexsha[:commit_short_len]
193195
return None
194196

195197

0 commit comments

Comments
 (0)