Support main branches other than "master"
This patch adds support for having the main branch be named different than "master". It will use "master" or "main" if available, and fall back to the first branch name if they're both missing.
This commit is contained in:
parent
dff4ff6757
commit
39cff29f4b
11
git.py
11
git.py
@ -223,6 +223,17 @@ class Repo:
|
|||||||
refs = self._for_each_ref(pattern="refs/heads/", sort="-authordate")
|
refs = self._for_each_ref(pattern="refs/heads/", sort="-authordate")
|
||||||
return [ref[len("refs/heads/") :] for _, _, ref in refs]
|
return [ref[len("refs/heads/") :] for _, _, ref in refs]
|
||||||
|
|
||||||
|
@functools.cache
|
||||||
|
def main_branch(self):
|
||||||
|
"""Get the name of the main branch."""
|
||||||
|
bs = self.branch_names()
|
||||||
|
for branch in ["master", "main"]:
|
||||||
|
if branch in bs:
|
||||||
|
return branch
|
||||||
|
if bs:
|
||||||
|
return bs[0]
|
||||||
|
return None
|
||||||
|
|
||||||
@functools.cache
|
@functools.cache
|
||||||
def tags(self, sort="-taggerdate"):
|
def tags(self, sort="-taggerdate"):
|
||||||
"""Get the (name, obj_id) of the tags."""
|
"""Get the (name, obj_id) of the tags."""
|
||||||
|
@ -35,20 +35,22 @@
|
|||||||
<hr/>
|
<hr/>
|
||||||
% end
|
% end
|
||||||
|
|
||||||
% if "master" in repo.branch_names():
|
% if repo.main_branch():
|
||||||
<div class="toggable-title" onclick="toggle('commits')">
|
<div class="toggable-title" onclick="toggle('commits')">
|
||||||
<a href="b/master/">commits (master)</a>
|
<a href="b/{{repo.main_branch()}}/">commits ({{repo.main_branch()}})</a>
|
||||||
</div>
|
</div>
|
||||||
% kwargs = dict(repo = repo, start_ref = "refs/heads/master",
|
% kwargs = dict(repo = repo,
|
||||||
|
% start_ref = "refs/heads/" + repo.main_branch(),
|
||||||
% limit = repo.info.commits_in_summary,
|
% limit = repo.info.commits_in_summary,
|
||||||
% shorten = shorten, repo_root = ".", offset = 0)
|
% shorten = shorten, repo_root = ".", offset = 0)
|
||||||
% include commit-list **kwargs
|
% include commit-list **kwargs
|
||||||
<hr/>
|
<hr/>
|
||||||
<div class="toggable-title" onclick="toggle('ls')">
|
<div class="toggable-title" onclick="toggle('ls')">
|
||||||
<a href="b/master/t/">tree (master)</a>
|
<a href="b/{{repo.main_branch()}}/t/">tree ({{repo.main_branch()}})</a>
|
||||||
</div>
|
</div>
|
||||||
% kwargs = dict(repo = repo, tree=repo.tree("master"),
|
% kwargs = dict(repo = repo, tree=repo.tree(repo.main_branch()),
|
||||||
% treeroot="b/master/t", dirname=smstr.from_url(""))
|
% treeroot="b/" + repo.main_branch() + "/t",
|
||||||
|
% dirname=smstr.from_url(""))
|
||||||
% include tree-list **kwargs
|
% include tree-list **kwargs
|
||||||
<hr/>
|
<hr/>
|
||||||
% end
|
% end
|
||||||
|
Loading…
Reference in New Issue
Block a user