From: Jack Bates Date: Thu, 19 Jan 2017 18:12:03 GMT Subject: grep open pull requests Message-ID: <276f6ed9-ff06-a00f-b88a-4d40d55c6d40@nottheoilrig.com> I have a couple questions around grepping among open pull requests. First, "git for-each-ref --no-merged": When I run the following, it lists refs/pull/1112/head, even though #1112 was merged in commit ced4da1. I guess this is because the tip of refs/pull/1112/head is 107fc59, not ced4da1? This maybe shows my lack of familiarity with Git details, but superficially the two commits appear identical -- [1] and [2] -- same parent, etc. Nonetheless they have different SHA-1s. I'm not sure why that is -- I didn't merge the commit -- but regardless, GitHub somehow still connects ced4da1 with #1112. So my question is, how are they doing that, and why can't "git for-each-ref --no-merged" likewise connect ced4da1 with refs/pull/1112/head? $ git clone \ > --bare \ > --config remote.origin.fetch=+refs/pull/*/head:refs/pull/*/head \ > https://github.com/apache/trafficserver.git $ cd trafficserver.git $ git for-each-ref --no-merged More generally, what I want is to periodically list open pull requests that add or modify lines containing the string "memset". So far I have the following in a Makefile. Can you recommend any improvements? .PHONY: all all: trafficserver.git cd trafficserver.git && git fetch cd trafficserver.git && git for-each-ref --format '%(refname)' refs/pull --no-merged | \ while read refname; do \ git log -p "master..$$refname" | grep -q '^+.*memset' && echo "$$refname"; \ done trafficserver.git: git clone \ --bare \ --config remote.origin.fetch=+refs/pull/*/head:refs/pull/*/head \ https://github.com/apache/trafficserver.git Lastly, a question more about GitHub than Git, but: Given the way GitHub is setup, I hope I can get a list of unmerged pull requests from Git alone. Can you think of a way to list *open* pull requests, or is that status only available out of band? Thanks! [1] https://github.com/apache/trafficserver/commit/107fc59104cce2a4b527f04e7ac86695c98b568c [2] https://github.com/apache/trafficserver/commit/ced4da13279f834c381925f2ecd1649bfb459e8b