To echo what others have said here you are going to want to use a distributed version control system for this and the two most popular are Git and Mercurial.
Both do what you want equally well but Mercurial is (IMO) simpler to learn and use as it has some implicit assumptions that Git does not. There is am O'Reilly book on Mercurial and a nice APress book on Git. I would read these before you deploy to decide which system more fits the features you want. Personally, I use Mercurial as I am not on a large team with complicated n-way branch/merge scenarios. If I were then I would prefer Git. As with all things in life there is a trade off between complexity and simplicity. If Mercurial does what you need you will find a smaller learning curve to get "good" at using it. I believe you would effectively want a main "branch" for the base product and an individual branch for each customer version. After you update the main branch with new features you should be able to pull those changes into the customer specific branches and rectify any issues that would effect individual customer implementations. On Apr 9, 8:25 pm, pepe <p...@betterrpg.com> wrote: > Hello, > > I'm sorry if this is not the right place for this question. Please > feel free to point me in the right direction. > > Also take into consideration that we have never used a version control > system so my questions might just be due to lack of knowledge and/or > understanding as of how to use the VCS. > > Is there a version control system (be it git, TortoiseSVN, other...) > that will be able to take care of the following scenario? > > Having a 'vanilla' version of an application we have 3 customers, each > with enough changes to their version of the application that no > version can be merged back to the vanilla one, hence ending up with 4 > versions: the vanilla one plus 3 others, one per customer. > > We need a VCS that will allow us to make changes to the main 'vanilla' > version and propagate those changes to the other versions and, better > yet, to propagate those changes selectively, meaning to only 1, or 2, > or the 3 other versions on demand. > > Thanks in advance. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-t...@googlegroups.com. To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.