Reputation: 9943
I'm new to GitHub (and Git in general) and we've decided to use it for a software development class. We have 3 teams working on 3 different 'game types' in the application. None of the features are interconnected, but each use the base framework. What is the best way to create a repo for this?
I was thinking the following:
However, I don't want each team to be able to edit the base framework. They should not have permission to do so. But they should be able to sync with it, if it changes.
I've Googled permissions on GitHub and I can't seem to find restrictions outside of the "Corporations" feature, which I don't know if I should use -- should I?
If not, should I create another account, one per team, and they issue a pull request to copy to their own repo, and change that? Is that a valid solution?
Upvotes: 1
Views: 300
Reputation: 545
Create an organization, with the framework and each project in its own repository. Use git submodules in each project (or your programming language's package installer.. like RubyGems/Bundler if you're using Ruby, for example) to pull in the framework. Create teams for each project in the organization and assign each team read access to the framework and committer access to that team's project.
Upvotes: 2