Currently, I am using CVS to keep track of my SourceForge project. I has the following requirements.
- I need to maintain a stable Trunk. Whenever there is a critical bug being reported by users, I may fix immediately, and release it within a few days.
- I need to perform extensive new features enhancement, huge code refactoring on and off. This may take several weeks to several months. Hence, what I usually do, is I will perform the new features enhancement and huge code refactoring within a branch (Or more branches if there are more features). Only after enough testing, I will merge them back to stable Trunk.
I am behind a poor internet connection most of the time. Recently, I am planning to migrate to a distributed source control - Mercurial , so that I can work offline sometimes.
I read the following article. I believe I can use the following ways to preserve my previous workflow under CVS's branching.
However, I cannot see any difference from end user point of view. May I know which mythology you guys usually apply? and why?