I work for a website development company and we are thinking about using GitHub for version control. We work with several different CMS platforms on the .NET platform and, of course, with many different clients.
We have a standard code base for each CMS, with which we begin by creating a new site. Of course, we would like to keep this and allow us to combine some changes from the developed site (when the base code base was somehow improved).
We often need to make small changes to the published site later and would like to be able to do this with minimal effort (that is, the client happily pays for us to fix his problem after 2 hours, but do not want to pay for 2 hours first).
How should we do this to work efficiently? I'm not very used to distributed version control (I used to work with CVS, Subversion and Clear Case), but from our imagination we could:
- Set up one repository for each client, start with a copy of the standard code base and from there. Of course, a lot of repositories.
- Set up one repository for each CMS and then open one branch for each client. This is probably (?) The best way, but what happens when we have 100 clients (= branches) in the same repository? Itโs also not very pleasant that we create many branches that are not really going to merge with the main branch.
I donโt know, maybe many branches - this is just a problem in my imagination or maybe there are better ways to do this that I did not think about. I would be interested in any experience in such problems.
Thanks for your time and help.
source
share