Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
238 views
in Technique[技术] by (71.8m points)

git - Is it possible to get a list of merges into a branch from the Github website OR API?

In our workflow, no "direct" commits are made into the master branch. The master branch only receives merges from Pull Requests.

We can think of each merge then as a new feature added to the master branch.

So I'd like to get a list of merges into master, as a way to visualize the blocks of features added into the product over time.

Does git or the Github API expose this query, or do I have to parse raw commits?

question from:https://stackoverflow.com/questions/21623699/is-it-possible-to-get-a-list-of-merges-into-a-branch-from-the-github-website-or

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

I use the following script:

git log --merges --first-parent master 
        --pretty=format:"%h %<(10,trunc)%aN %C(white)%<(15)%ar%Creset %C(red bold)%<(15)%D%Creset %s"

Explaining each argument:

  • --merges: only "merge" commits (more than 1 parent);
  • --first-parent master: only merges applied to master. This removes the entries where someone merged master into their branches;
  • --pretty-format: applies the following formatting:
    • %h: the commit short hash;
    • %<(10,trunc)%aN: author name, truncated at 10 chars;
    • %<(15)%ar: the relative commit time, padded to 15 chars;
    • %<(15)%D: the tag names, also padded to 15 chars;
    • %s: first line of the commit message.

The result is pretty satisfying:

terminal image of the command output


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...