University of Twente Student Theses
CheckMerge: A System for Risk Assessment of Code Merges
Kester, J.J. (2018) CheckMerge: A System for Risk Assessment of Code Merges.
PDF
684kB |
Abstract: | When working on large software projects using version control systems, merges are not always trivial to execute. Even when a merge can be resolved without manual intervention, the resulting program is not necessarily correct. In this study a number of categories of changes that may cause issues during merges are identified. This report introduces two new language-independent algorithms that detect changes from three of these categories. These algorithms work based on the abstract syntax trees (ASTs) of compared program versions and require the differences between these versions to be calculated beforehand. A prototype system has been designed and implemented for the C programming language. The newly developed algorithms perform well in detecting the problematic changes, in the case of one algorithm at the cost of false positives. The prototype system shows the feasibility of such a system, but is not yet suitable for production use. All in all the analysis of source code merges is a promising area of research and with some effort a tool for practical code merge analysis could be produced, helping developers be more productive when carrying out merges with less errors. |
Item Type: | Essay (Master) |
Faculty: | EEMCS: Electrical Engineering, Mathematics and Computer Science |
Subject: | 54 computer science |
Programme: | Computer Science MSc (60300) |
Link to this item: | https://purl.utwente.nl/essays/74905 |
Export this item as: | BibTeX EndNote HTML Citation Reference Manager |
Repository Staff Only: item control page