At work we contribute to an open source project using git, as well as keep local proprietary changes (we also license it). And what I'd like to do is setup a bare repository that is a clone of the upstreams repo. Our developers would then clone from this and push back to it using more of a cvs/svn development model - if Joe is working on something in branch, then leaves, we'd just like Hank to take over by checking out the branch.
What I'm confused about is the best to way to track the remote repo. Should the master of our internal bare repo be the copy of the master from upstream? Or should we put it on another branch. Also, since our shared repo is bare, how do we go about pulling in the latest changes from upstream? If I'm correct, I'd add upstream as a remote to my personal checkout, pull it, then push it back to our shared repo?
If possible we'd like to limit the users that could pull in the upstream changes to the shared repo, but all developers should have free access to work on other branches in the shared repo.
Am I having svn influence me too much in how I'd like our git repo to work?
Thanks.