Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Search all branches created by a user in a GitHub repository

There was a branch created by a user (knownUserName) in our code repository (repoEx). Where he committed and pushed a few of his changes, but he didn't create a pull request for the same.

It has been long and there is an exponential increase in the number of branches that the repository now has because of which we are unable to go through all the branches and find the one created by him.

Is there a way to search all the branches using the git command line or GitHub interface, to find all the branches created by a user in a specific repository?

I tried using the GitHub interface and filtering the branches (under https://github.com/repoEx/branches/all) using the search parameter as -

author:<knownUserName>

but this won't work. The search seems to be effective with a branch name, but I don't have any clue about the name.

like image 281
Naman Avatar asked Dec 13 '16 07:12

Naman


People also ask

Is there a script to list git branches created by me?

So short answer is No, there is none.


2 Answers

This is for OS X. Just adding grep on to this answer here and modifying for email, you get

git for-each-ref --format='%(committerdate) %09 %(authoremail) %09 %(refname)' | sort -k5n -k2M -k3n -k4n | grep <author-email>

which works quite well.

[Other answer did not work for me, not sure why]

like image 73
Dan Rosenstark Avatar answered Sep 29 '22 05:09

Dan Rosenstark


Loop on the branch, display the last commit information, and grep on the username.

You will have the commit id you are looking for:

for co in `git branch -a --no-merge`; do  git log -1 --no-walk --pretty=format:"%h - %an, %ar : %s" $co; done | grep <knownUserName>
like image 37
Ôrel Avatar answered Sep 29 '22 05:09

Ôrel