Following "Gitolite permissions on branches" and the gitolite rules, you could try:
(only for gitolite g3, unfortunately, which means a g2 would need to migrate)
repo production_repo
RW+ = server_key
R master = @all
- master = @all
R group_branch1 = @group1
R group_branch1_user1 = @group1
RW group_branch1_user1 = user1