On Wed, Feb 17, 2010 at 09:19, dcz <d...@phpbb-seo.com> wrote: > Thanks for responding. > > I was hopping that someone did put something together to handle this. > It looks like doable with a pre-commit hook that would have a look in a db > (or a file) to find out if the user is JD or SD. For JDs, the commit could > be made dry-run, and the script could in such case send a mail to SDs who > could later reply to in order to do the actual commit (eg authorize it), or > not.
Hook scripts do not work in this way. They are non-interactive and especially in the case of the pre-commit, will block others from committing while the hook is executing. There is no "dry run" for a commit. It's conceivable that you could check the user ID in the pre-commit, and if the committer is JD, reject the commit while mailing a diff to SD which represents the change being attempted. This would require a lot of overhead on the server though. Honestly, I think you're trying to apply an excessively technical solution to a fundamentally non-technical idea. > Unfortunately, I still have a lot of doc to read about svn and not so much > time as us all. > But since I saw it working, I keep faith ;-) > > > > Le 17/02/2010 14:30, Andy Levy a écrit : >> >> On Wed, Feb 17, 2010 at 08:17, dcz<d...@phpbb-seo.com> wrote: >> >>> Hello, >>> Here is what I'm trying to do : some user (let's call them junior >>> developer) >>> should require their commit to be authorized by other (senior developer) >>> before they would actually be committed. >>> >>> Since I saw this feature on an svn (though I do not administrate this >>> one, >>> so I can't tell how it is done, but it's svn for sure) and found it >>> pretty >>> useful, I was a bit surprised not to be able to find any topic about it >>> after hours a googling. >>> >>> Would be very nice if someone could share thoughts about how to set such >>> feature up. >>> >> Subversion has no such feature, which is why you can't find anything about >> it. >> >> You can approach this a couple of ways. 2 that come to mind immediately: >> 1) Junior developer (JD) submits patches to the senior developer (SD). >> SD reviews the patch& commits when he's satisfied. >> 2) JD gets his own private branch& can commit to it all day long. >> When he's ready for a code review, SD looks it over& merges JD's work >> into trunk (or wherever your main development is done). This will >> require that JD's branch be kept up to date with regular merges from >> trunk so that he's not conflicting with other peoples' work. >> >> >> > >