S
S
sandrey-802016-01-04 00:35:28
git
sandrey-80, 2016-01-04 00:35:28

What is the best way to set up GIT to maintain a product for several customers?

I'm trying to clean up our product written in c++. Now we have all the code in one branch, before shipping we select a separate branch. We fix fixes before shipment in the release branch.
This product is used by 10 customers with whom we have been working for a long time. It so happened historically that the project is large, it was shipped to different customers at different times. For each, I had to finish something and these improvements are "included in the build" by define :( Yes, I know that this is crooked.
Now there are such problems:
1. Since all the code of all customers is in one branch, the client, receiving a new version receives it with all the improvements that he does not need and may not work for him
2. Fixes conflict with other customers.
Where can I see the solution to this typical, in my opinion, problem of maintaining a project in GIT?

Answer the question

In order to leave comments, you need to log in

2 answer(s)
O
OnYourLips, 2016-01-04
@OnYourLips

Have different build goals for different clients.
On the CI server, run tests against all targets.
I don't think it's worth splitting the code into branches, if the changes are insignificant, it will complicate the work with git.

N
Nazar Mokrinsky, 2016-01-04
@nazarpc

What prevents you from having separate branches / repositories for each customer and doing merge / rebase on a common basis when necessary? This solves both of your problems.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question