From b62f675439d73b1ae4f260d00077c5f4041eb220 Mon Sep 17 00:00:00 2001 From: "scottmg@chromium.org" Date: Wed, 9 Sep 2015 23:15:36 +0000 Subject: [PATCH] find-releases: handle untagged merges At the moment, this doesn't work too well for something that was just merged to 45. [(b912ace...)]scottmg@scottmg:/work/cr/src$ git find-releases 55b4c95889d6a72e52bc72702580a62f04f35777 commit 55b4c95889d6a72e52bc72702580a62f04f35777 was: initially in 47.0.2501.0 merged to undefined (as de54b58d404a0cdf01639ae7260ef10bbb843ed9) merged to 46.0.2490.19 (as b4ba1071baaabc92cb5a2ca89e238c478eca0075) ("undefined" being the problem). This is because: [(b912ace...)]scottmg@scottmg:/work/cr/src$ git name-rev --tags de54b58d404a0cdf01639ae7260ef10bbb843ed9 de54b58d404a0cdf01639ae7260ef10bbb843ed9 undefined But, [(b912ace...)]scottmg@scottmg:/work/cr/src$ cat .git/refs/remotes/branch-heads/2454 de54b58d404a0cdf01639ae7260ef10bbb843ed9 So, if name-rev --tags says it's not yet tagged, rather than just printing 'undefined', at least say which branch it was merged to. As in: [(b912ace...)]scottmg@scottmg:/work/cr/src$ git find-releases 55b4c95889d6a72e52bc72702580a62f04f35777 commit 55b4c95889d6a72e52bc72702580a62f04f35777 was: initially in 47.0.2501.0 merged to branch-heads/2454 [untagged] (as de54b58d404a0cdf01639ae7260ef10bbb843ed9) merged to 46.0.2490.19 (as b4ba1071baaabc92cb5a2ca89e238c478eca0075) R=dpranke@chromium.org,primiano@chromium.org Review URL: https://codereview.chromium.org/1325233005 git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@296621 0039d316-1c4b-4281-b951-d872f2087c98 --- git_find_releases.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/git_find_releases.py b/git_find_releases.py index 4bb27c54d..ef65c0e6d 100755 --- a/git_find_releases.py +++ b/git_find_releases.py @@ -19,7 +19,12 @@ import git_common as git def GetNameForCommit(sha1): - return re.sub(r'~.*$', '', git.run('name-rev', '--tags', '--name-only', sha1)) + name = re.sub(r'~.*$', '', git.run('name-rev', '--tags', '--name-only', sha1)) + if name == 'undefined': + name = git.run( + 'name-rev', '--refs', 'remotes/branch-heads/*', '--name-only', + sha1) + ' [untagged]' + return name def GetMergesForCommit(sha1):