Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Using Git Commit History for Change Prediction: An empirical study on the predictive potential of file-level logical coupling
KTH, School of Computer Science and Communication (CSC).
2015 (English)Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesisAlternative title
Användning av Gits versionshistorik för att förutsäga förändringar : En empirisk studie av den prediktiva potentialen av logisk koppling på filnivå (Swedish)
Abstract [en]

In recent years, a new generation of distributed version control systems have taken the place of the aging centralized ones, with Git arguably being the most popular distributed system today.

We investigate the potential of using Git commit history to predict files that are often changed together. Specifically, we look at the rename tracking heuristic found in Git, and the impact it has on prediction performance. By applying a data mining algorithm to five popular GitHub repositories we extract logical coupling – inter-file dependencies not necessarily detectable by static analysis – on which we base our change prediction.

In addition, we examine if certain commits are better suited for change prediction than others; we define a bug fix commit as a commit that resolves one or more issues in the associated issue tracking system and compare their prediction performance.

While our findings do not reveal any notable differences in prediction performance when disregarding rename information, they suggest that extracting coupling from, and predicting on, bug fix commits in particular could lead to predictions that are both more accurate and numerous.

Abstract [sv]

De senaste åren har en ny generation av distribuerade versionshanteringssystem tagit plats där tidigare centraliserade sådana huserat. I spetsen för dessa nya system går ett system vid namn Git.

Vi undersöker potentialen i att nyttja versionshistorik från Git i syftet att förutspå filer som ofta redigeras ihop. I synnerhet synar vi Gits heuristik för att detektera när en fil flyttats eller bytt namn, någonting som torde vara användbart för att bibehålla historiken för en sådan fil, och mäter dess inverkan på prediktionsprestandan. Genom att applicera en datautvinningsalgoritm på fem populära GitHubprojekt extraherar vi logisk koppling – beroenden mellan filer som inte nödvändigtvis är detekterbara medelst statisk analys – på vilken vi baserar vår prediktion.

Därtill utreder vi huruvida vissa Gitcommits är bättre lämpade för prediktion än andra; vi definierar en buggfixcommit som en commit som löser en eller flera buggar i den tillhörande buggdatabasen, och jämför deras prediktionsprestanda.

Medan våra resultat ej kan påvisa några större prestandamässiga skillnader när flytt- och namnbytesinformationen ignorerades, indikerar de att extrahera koppling från, och prediktera på, enbart bugfixcommits kan leda till förutsägelser som är både mer precisa och mångtaliga.

Place, publisher, year, edition, pages
2015.
Keyword [en]
git, scm, data mining, machine learning
National Category
Computer Science
Identifiers
URN: urn:nbn:se:kth:diva-172998OAI: oai:DiVA.org:kth-172998DiVA: diva2:851524
Educational program
Master of Science in Engineering - Computer Science and Technology
Supervisors
Examiners
Available from: 2015-09-10 Created: 2015-09-06 Last updated: 2015-09-10Bibliographically approved

Open Access in DiVA

fulltext(783 kB)237 downloads
File information
File name FULLTEXT01.pdfFile size 783 kBChecksum SHA-512
99fba2f0bda2c3eb4a8e9debf6c7bb32a046f85412ccab1f4b334a97bf1cc3efd01ef031f7b82c273a82a889059998bfd6c6339e1c0468663c9d47175c109c14
Type fulltextMimetype application/pdf

By organisation
School of Computer Science and Communication (CSC)
Computer Science

Search outside of DiVA

GoogleGoogle Scholar
Total: 237 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 899 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf