Allow forking private repository on GitHub and integrate in Eclipse
I’m working on a project in a team size of 9 and all my code is on my GitHub account as a public repository. I own the master branch and my team members have forked it, and they work on the project and make pull requests for their made changes.
Its a Java project and we’re using Eclipse (Juno) with Egit. So far, workflow is understood by all members, i.e.
- Commit changes.
- Push to Upstream (from Project>Team)
- Make a pull request on GitHub.
- Requested changes are merged to master branch (by me).
- Members do
git fetch upstreamand
git merge upstream/masterfrom shell, and then do
Push to Upstreamfrom Eclipse (Project>Team menu).
Also note that members have already synced their forks with master branch using
git remote add upstream https://github.com/me/MyProject.git
On my end, when I encounter pull request, I just confirm merge from GitHub.com and then
Pull it from Eclipse.
Everything works fine currently, but now entire project is to be moved to private repo (each member will have their own branch of project within their own Private repo). I understand that if I’ll make my repo private, then I’ll lost all members who have forked it.
So how can I make all of our repos private and continue the work in above manner?
This is my first GitHub collaborated project so I’m new to whole forking and branching concept, same is the case with my team members.
One Solution collect form web for “Allow forking private repository on GitHub and integrate in Eclipse”
You don’t want to have a private repo per team member. Instead you want to create an organization on github, put all team members into the organization and then have a private repository for the organization, which is accessible to all members. The team members can either work directly on that organization repository or create forks for personal development.
It is also possible to have a workflow with everyone using a personal private repository, but that would be really cumbersome, as every member of your project would have to add all other repositories as remote locations in his repository. And the management of the access rights of so many repositories would be a nightmare.