Title :
Continuous Integration in a Social-Coding World: Empirical Evidence from GitHub
Author :
Vasilescu, B. ; Van Schuylenburg, S. ; Wulms, J. ; Serebrenik, A. ; van den Brand, M.G.J.
Author_Institution :
Eindhoven Univ. of Technol., Eindhoven, Netherlands
fDate :
Sept. 29 2014-Oct. 3 2014
Abstract :
Continuous integration is a software engineering practice of frequently merging all developer working copies with a shared main branch, e.g., several times a day. With the advent of GitHub, a platform well known for its "social coding" features that aid collaboration and sharing, and currently the largest code host in the open source world, collaborative software development has never been more prominent. In GitHub development one can distinguish between two types of developer contributions to a project: direct ones, coming from a typically small group of developers with write access to the main project repository, and indirect ones, coming from developers who fork the main repository, update their copies locally, and submit pull requests for review and merger. In this paper we explore how GitHub developers use continuous integration as well as whether the contribution type (direct versus indirect) and different project characteristics (e.g., main programming language, or project age) are associated with the success of the automatic builds.
Keywords :
public domain software; software engineering; source code (software); GitHub development; code host; collaborative software development; continuous integration; open source world; project characteristics; project repository; social-coding world; software engineering practice; Blogs; Encoding; Java; Open source software; Programming; GitHub; automatic build; collaborative software development; continuous integration;
Conference_Titel :
Software Maintenance and Evolution (ICSME), 2014 IEEE International Conference on
Conference_Location :
Victoria, BC
DOI :
10.1109/ICSME.2014.62