Mining Software Engineering Data from GitHub

by Gousios, Georgios and Spinellis, Diomidis

You can get a pre-print version from here.
You can view the publisher's page here.
See the paper's associated code repository: ghtorrent/tutorial


GitHub is the largest collaborative source code hosting site built on top of the Git version control system. The availability of a comprehensive API has made GitHub a target for many software engineering and online collaboration research efforts. In our work, we have discovered that a) obtaining data from GitHub is not trivial, b) the data may not be suitable for all types of research, and c) improper use can lead to biased results. In this tutorial, we analyze how data from GitHub can be used for large-scale, quantitative research, while avoiding common pitfalls. We use the GHTorrent dataset, a queryable offline mirror of the GitHub API data, to draw examples from and present pitfall avoidance strategies.

Bibtex record

  author = {Gousios, Georgios and Spinellis, Diomidis},
  title = {Mining Software Engineering Data from GitHub},
  booktitle = {Proceedings of the 39th International Conference on Software Engineering Companion},
  series = {ICSE-C '17},
  year = {2017},
  isbn = {978-1-5386-1589-8},
  location = {Buenos Aires, Argentina},
  pages = {501--502},
  numpages = {2},
  doi = {10.1109/ICSE-C.2017.164},
  publisher = {IEEE Press},
  address = {Piscataway, NJ, USA},
  keywords = {GHTorrent, GitHub, empirical software engineering, git},
  url = {/pub/mining-soft-eng-data-github.pdf},
  github = {ghtorrent/tutorial}

The paper