A Branching/Merging Strtegy for Parallel Software Development
In many software configuration management (SCM) systems, brnching and merging are fundamental operations, supporting isolation and integration respectively. Unfortunately, the obvious branching and merging strategies have unpleasant consequences. This paper presents a less obvious branching and merging strategy, for parallel software development, which does not suffer these cosequences. In particular, it presents a way of updating an active branch from a new baseline. The strategy can be described as “merging at a label”. It has been successful at managing unnecessary branch proliferation and change isolation in an industrial SCM environment.
KeywordsSelect Version Fundamental Operation Unpleasant Consequence Change Package Obvious Strategy
Unable to display preview. Download preview PDF.
- 1.Atria Software, Inc. ClearCase MultiSite Manual, 1996.Google Scholar
- 2.Atria Software, Inc. Clearcase User’s Manual (Unix/Release 3.0), 1996.Google Scholar
- 3.P. Feiler. Configuration management models in commercial environments. Technical Report CMU/SEI-91-TR-7, Software Engineering Institute, Carnegie Mellon University, 1991.Google Scholar
- 4.C. Ghezzi, M. Jazayeri, and D. Mandrioli. Fundamentals of Software Engineering. Prentice Hall, 1991.Google Scholar
- 5.J. Hunt, F. Lamers, J. Reuter, and W. Tichy. Distributed configuration management via Java and the World Widc Web. In Proceedings of the International Conference on Software Engineering, 7th Workshop on Software Configuration Management, pages 161–174. Springer-Verlag, 1997. Also: Lecture Notes in Computer Science #i235.Google Scholar
- 6.D. Leblang. Managing the software development process with ClearGnide. In Proceedings of the International Conference on Software Engineering, 7th Workshop on Software Configuration Management, pages 66–80. Springer-Verlag, 1997. Also: Lecture Notes in Computer Science #1235. http://uuv.delorie.com/gnu/docs/cvs/cvs_toc.html ftp://psep.ai.mit.edu/pub/gnu/bash. Engineering, pages 364-370, December 1975.Google Scholar
- 7.R. Pesch. CVS-Concurrent Versions System.Google Scholar
- 8.C. Ramey and B. Fox. Bash Reference Manual.Google Scholar
- 9.M. Rochkind. The source code control system. IEEE Dansactions on Software Google Scholar