Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1984642.1984645acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Branching and merging: an investigation into current version control practices

Published: 21 May 2011 Publication History
  • Get Citation Alerts
  • Abstract

    The use of version control has become ubiquitous in software development projects. Version control systems facilitate parallel development and maintenance through branching, the creation of isolated codelines. Merging is a consequence of branching and is the process of integrating codelines. However, there are unanswered questions about the use of version control to support parallel development; in particular, how are branching and merging used in practice? What defines a successful branching and merging strategy? As a first step towards answering these questions, we recruited a diverse sample of 140 version control users to participate in an online survey. In this paper, we present the survey results and 4 key observations about branching and merging practices in software development projects.

    References

    [1]
    B. Appleton, S. Berczuk, R. Cabrera, and R. Orenstein. Streamed lines: Branching patterns for parallel software development. In 5th Annual Conference on Pattern Languages of Program Design, 1998.
    [2]
    B. de Alwis and J. Sillito. Why are software projects moving from centralized to decentralized version control systems? In Proceedings of the 2009 ICSE Workshop on Cooperative and Human Aspects on Software Engineering, CHASE '09, pages 36--39, Washington, DC, USA, 2009. IEEE Computer Society.
    [3]
    P. Duvall, S. Matyas, and A. Glover. Continuous integration: improving software quality and reducing risk. Addison-Wesley Professional, first edition, 2007.
    [4]
    B. Javidi, J. Pickell, B. Heys, T. Erwee, and W.-P. Schaub. Microsoft Visual Studio Team Foundation Server Branching Guidance 2010. Microsoft Corporation, 2010 edition, 2009.
    [5]
    T. Mens. A state-of-the-art survey on software merging. Software Engineering, IEEE Transactions on, 28(5):449 --462, May 2002.
    [6]
    A. Miller. A hundred days of continuous integration. In Agile, 2008. AGILE '08. Conference, pages 289--293, 2008.
    [7]
    B. O'Sullivan. Making sense of revision-control systems. Queue, 7:30:30--30:40, August 2009.
    [8]
    L. Torvalds. {git pull} drm-next, March 2009. http://www.mail-archive.com/[email protected]/msg39091.html.
    [9]
    C. Walrad and D. Strom. The importance of branching models in scm. Computer, 35:31--38, September 2002.
    [10]
    C. C. Williams and J. W. Spacco. Branching and merging in the repository. In Proceedings of the 2008 international working conference on Mining software repositories, MSR '08, pages 19--22, New York, NY, USA, 2008. ACM.

    Cited By

    View all
    • (2024)SHARP: Exploring Version Control Systems in Live Coding MusicProceedings of the 16th Conference on Creativity & Cognition10.1145/3635636.3656195(426-437)Online publication date: 23-Jun-2024
    • (2024)The Personas of Cloud CAD Collaboration: A Case Study of a Team of CAD ProfessionalsIEEE Transactions on Engineering Management10.1109/TEM.2024.340917871(11225-11237)Online publication date: 2024
    • (2024)Model to reduce DevOps pipeline execution time using SASTInternational Journal of System Assurance Engineering and Management10.1007/s13198-024-02262-615:5(1999-2009)Online publication date: 30-May-2024
    • Show More Cited By

    Index Terms

    1. Branching and merging: an investigation into current version control practices

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Conferences
      CHASE '11: Proceedings of the 4th International Workshop on Cooperative and Human Aspects of Software Engineering
      May 2011
      100 pages
      ISBN:9781450305761
      DOI:10.1145/1984642
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Sponsors

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 21 May 2011

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. branching
      2. configuration management
      3. integration
      4. merging
      5. parallel development
      6. revision control
      7. source control
      8. version control

      Qualifiers

      • Research-article

      Conference

      ICSE11
      Sponsor:
      ICSE11: International Conference on Software Engineering
      May 21, 2011
      HI, Waikiki, Honolulu, USA

      Acceptance Rates

      CHASE '11 Paper Acceptance Rate 19 of 36 submissions, 53%;
      Overall Acceptance Rate 47 of 70 submissions, 67%

      Upcoming Conference

      ICSE 2025

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)65
      • Downloads (Last 6 weeks)3
      Reflects downloads up to 10 Aug 2024

      Other Metrics

      Citations

      Cited By

      View all
      • (2024)SHARP: Exploring Version Control Systems in Live Coding MusicProceedings of the 16th Conference on Creativity & Cognition10.1145/3635636.3656195(426-437)Online publication date: 23-Jun-2024
      • (2024)The Personas of Cloud CAD Collaboration: A Case Study of a Team of CAD ProfessionalsIEEE Transactions on Engineering Management10.1109/TEM.2024.340917871(11225-11237)Online publication date: 2024
      • (2024)Model to reduce DevOps pipeline execution time using SASTInternational Journal of System Assurance Engineering and Management10.1007/s13198-024-02262-615:5(1999-2009)Online publication date: 30-May-2024
      • (2023)User Perspectives on Branching in Computer-Aided DesignProceedings of the ACM on Human-Computer Interaction10.1145/36102207:CSCW2(1-30)Online publication date: 4-Oct-2023
      • (2023)Operation-Based Refactoring-Aware Merging: An Empirical EvaluationIEEE Transactions on Software Engineering10.1109/TSE.2022.322885149:4(2698-2721)Online publication date: 1-Apr-2023
      • (2023)Symbolic Execution to Detect Semantic Merge Conflicts2023 IEEE 23rd International Working Conference on Source Code Analysis and Manipulation (SCAM)10.1109/SCAM59687.2023.00028(186-197)Online publication date: 2-Oct-2023
      • (2023)Towards accurate recommendations of merge conflicts resolution strategiesInformation and Software Technology10.1016/j.infsof.2023.107332164(107332)Online publication date: Dec-2023
      • (2022)GitDelver enterprise dataset (GDED)Proceedings of the 19th International Conference on Mining Software Repositories10.1145/3524842.3528003(403-407)Online publication date: 23-May-2022
      • (2021)How the adoption of feature toggles correlates with branch merges and defects in open‐source projects?Software: Practice and Experience10.1002/spe.303452:2(506-536)Online publication date: 27-Sep-2021
      • (2020)A conceptual scheme to support the identification of consolidation requirements in open designProceedings of the 19th Brazilian Symposium on Human Factors in Computing Systems10.1145/3424953.3426625(1-10)Online publication date: 26-Oct-2020
      • Show More Cited By

      View Options

      Get Access

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Media

      Figures

      Other

      Tables

      Share

      Share

      Share this Publication link

      Share on social media