I have a project “A” that is a Git repository. I would like to be able to make multiple copies of project A (B and C), and modify them for clients.
“A” is the master so sometimes when I do new functionality i would like to be able to pull them into B or C. But some commits should just stay in A and only be used if making a new clone.
How do I do that with Git? That is:
- how to copy A? (Clone?)
- how to get specific commits into B and C?
Please keep in mind that this all happening locally – not on GitHub. I use OS X.
git cloneis the way, meaning you establish a publication link between A and B,C, allowing for pushing/pulling commits between them.By having in the repo A:
rebase --ontoyour commits from your private branch on top of your public branch, then push that public branch to B or C.One workflow would be for instance: