Hacker News new | ask | show | jobs
by websitescenes 3731 days ago
"If you add a new member to your team, they would have to fork the repositories on GitHub, clone them locally, make the changes, push to their own fork and then create the pull request."

You don't have to do this with Github. Just clone directly to your local machine. Also, you don't have to use git flow when using Github. I think git flow seems to be the real culprit of the symptoms you have identified.

2 comments

Exactly. There's multiple way of working together with Git/Hub. Gitflow is not a bible, but a customization workflow that should be adopted to the team.
There are far fewer reasons not to use Gitflow than you might initially think.
I personally don't have any issues with Gitflow but it seems the OP does.
> You don't have to do this with Github. Just clone directly to your local machine.

If you use this model, your local clone isn't "backedup" by github until the pullrequest is merged, correct?

One reason I like my teammembers to have their own local fork, is so they can have github exist as a backup.

Team members can also work in their own private branches that are pushed to a single repository - that's usually sufficient as a "backup".
That requires push-access. Not all team members have push access to all our source repositories.
Allowing someone to push branches to the "central" repository versus requiring them to have forks of it is functionally the same thing, assuming you set up branch protection for master.
> assuming you set up branch protection for master.

Bad assumption. However, branch protection sounds cool. Will investigate it.

honest question: why don't they have push access?
Prior to 2 minutes ago, I had no idea you could lock down a branch in github. We have folks working on our codebase, and the team wants to enforce code-reviews for anything that goes into our master branch. To enforce this, only a few people have push access.

This is similar to the open-source maintainer model.

Why would you not be able to use Github as a backup? Github keeps all the branches that are pushed to it, as any git repo.
If you have push access to the repository sure.

What if you don't have push access?

You don't give your employees push access to their repos?
By default, only admins have push access to all the repo's for an organization.

Everyone else, by default, has read-only access to the entire organizations private repos.

Each product team is allowed to specify how their own teams can access repos.

We also have 3rd party contractors and vendors work on portions, and they don't have push access.