gcc-changelog: respect branch in git_update_version.py.
authorMartin Liska <mliska@suse.cz>
Wed, 12 May 2021 08:37:12 +0000 (10:37 +0200)
committerMartin Liska <mliska@suse.cz>
Wed, 12 May 2021 08:37:12 +0000 (10:37 +0200)
contrib/ChangeLog:

* gcc-changelog/git_commit.py: Simplify needle lookup.
* gcc-changelog/git_update_version.py: Pass ref_name to
parse_git_revisions.

contrib/gcc-changelog/git_commit.py
contrib/gcc-changelog/git_update_version.py

index c70279e..8f9b266 100755 (executable)
@@ -394,7 +394,7 @@ class GitCommit:
         self.changelog_locations = list(default_changelog_locations)
         if ref_name:
             version = sys.maxsize
-            if ref_name.startswith('refs/heads/releases/gcc-'):
+            if 'releases/gcc-' in ref_name:
                 version = int(ref_name.split('-')[-1])
             if version >= 12:
                 # HSA and BRIG were removed in GCC 12
index 9bc41bb..0a21a74 100755 (executable)
@@ -78,7 +78,7 @@ repo = Repo(args.git_path)
 origin = repo.remotes['origin']
 
 
-def update_current_branch():
+def update_current_branch(ref_name):
     commit = repo.head.commit
     commit_count = 1
     while commit:
@@ -101,7 +101,7 @@ def update_current_branch():
         if len(head.parents) == 2:
             head = head.parents[1]
         commits = parse_git_revisions(args.git_path, '%s..%s'
-                                      % (commit.hexsha, head.hexsha))
+                                      % (commit.hexsha, head.hexsha), ref_name)
         commits = [c for c in commits if c.info.hexsha not in IGNORED_COMMITS]
         for git_commit in reversed(commits):
             prepend_to_changelog_files(repo, args.git_path, git_commit,
@@ -145,6 +145,6 @@ else:
             branch.checkout()
             origin.pull(rebase=True)
             print('branch pulled and checked out')
-            update_current_branch()
+            update_current_branch(name)
             assert not repo.index.diff(None)
             print('branch is done\n', flush=True)