Software Integration
Helping developers with software evolution & merge conflicts
Multiple versions of a software system can exist for various reasons, such as developing an SPL or simply forking or branching a repo to work on a given feature. At one point, these versions need to be integrated. Such integration is not an easy task since there may be conflicting changes in the code, textually, syntactically, and semantically. In this work, we look at how we can facilitate such integrations and how we can help developers merge their code more easily with less conflicts.
Related Resources
Related Publications
2023
2022
- EMSEReuse and Maintenance Practices among Divergent Forks in Three Software EcosystemsEmpirical Software Engineering, 2022
2019
- ESEMPredicting Merge Conflicts in Collaborative Software DevelopmentIn Proceedings of the ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM ’19), 2019
- MSRScalable Software Merging Studies with MERGANSERIn Proceedings of the 16th International Conference on Mining Software Repositories (MSR ’19) , 2019
- SANERAre Refactorings to Blame? An Empirical Study of Refactorings in Merge ConflictsIn Proc. of the 26th IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER ’19), 2019
2018
- ICSMEClone-Based Variability Management in the Android EcosystemIn Proc. of the 34th International Conference on Software Maintenance and Evolution (ICSME ’18) – Industry Track, 2018
- MSRThe Android Update Problem: An Empirical StudyIn Proceedings of the 15th International Conference on Mining Software Repositories (MSR ’18), 2018