Put Down Your Forks - Introducing Protected Branches
blog.assembla.com
blog.assembla.com
Did you just clone your team's repository in order to work on it? Congratulations, you just forked. Even a checkout from a non-DVCS like svn is really a fork, if you think about it.
The best tooling passes this equivalence all the way to the user. git does an excellent job of it.
Then all you have left are semantics and namespacing.
In git, just pull them all into one repository. It's trivial, provided that you are able to list the repositories and branch names (which is a namespacing problem).
Our publicist team is currently writing a letter to your employer on PasteBin while all our engineers are coordinating our sheeps to take down your employer's infrastructure until they decide to fire you.
Meanwhile, please enjoy this bucket of hate messages from our most recents intern.
Cordially, The Internet"
If not, then please stop dragging that stupid subject into other threads, some of us could use a vacation
Sadly, ACL is not widely used or supported. It works on a machine where team members work as their own unix users, but it doesn't work under a shared login setup out of the box (although it's not hard to make that work). Bitbucket doesn't support it. I'm not aware of any installable repository managers that support it. This is a shame, because it's basically really good.
[1]: http://hglabhq.com
Actually, at my work, we all work in forks on BitBucket. Pull down from upstream before pushing to our fork, and sending a pull request to be reviewed then merged into upstream.
Works really well, especially with BitBucket's "Sync" button in the web UI for keeping your fork up-to-date with upstream.
One UX concern, though : it's not clear in the article if it's the case, but you should really let filter branches by owner/protected and third party ones, else it will be really hard to retrieve upstream version or features branches.