Why merge often - http://queue.acm.org/detail.cfm?id=1643030 http://www.cmcrossroads.com/cgi-bin/cmwiki/view/CM/BranchYesMergeNo http://paulhammant.com/2013/12/04/what_is_your_branching_model A lot of resource here - http://www.cmcrossroads.com/cgi-bin/cmwiki/view/CM/BranchingAndMerging At my company, we tag each CVS module and we use those tags to build releases. That way, we know exactly which code versions each deployment has. Also, developers can check in code at any point while controlling when they release it. Branches are a major headache, which I avoid whenever possible. You have to worry about maintaining and testing each branch, along with merging changes. I prefer to release the latest and greatest code to each customer. If different customers require different behavior, if statements and configuration files are a lot better than CVS branches. Branches do make sense if you want to release a minor change to an old release, but upgrading the entire code base is risky. However, high-quality code and testing should reduce that risk. http://discuss.joelonsoftware.com/default.asp?pg=pgDiscussThread&ixDiscussTopicParent=16312&ixDiscussGroup=3&cReplies=11 Subversion branching technique and tips - http://binkley.blogspot.com/2007/05/subversion-best-practices-branching_01.html http://www.dehora.net/journal/2006/02/subversion_tips_dealing_with_branches.html/ Another discussion - http://www.codinghorror.com/blog/archives/000968.html Branch visualization - http://codicesoftware.blogspot.com/2007/05/linus-torvalds-on-git-and-scm.html http://www.youtube.com/watch?v=CABIi-Eu2zA One way of manage branching and merging, the summary is, frequency create new branch for pre-merge instead of one time big merge - http://designbygravity.wordpress.com/2009/10/19/what-mother-never-told-you-about-svn-branching-and-merging/ My colleagues suggest subversion merge tracking can solve the problem without that pre-merge, but I am not sure how that can work... http://blogs.open.collab.net/svn/2007/09/what-subversion.html No branch? https://cacm.acm.org/magazines/2016/7/204032-why-google-stores-billions-of-lines-of-code-in-a-single-repository/fulltext http://www.infoq.com/cn/news/2017/08/How-Google-build-Web-framework https://martinfowler.com/articles/branching-patterns.html https://codingcraftsman.wordpress.com/2021/01/11/the-linear-git-history/