Re: workflow with blessed, lieutenant, and developers
- From
- Enrico Weigelt <weigelt@metux.de>
- Date
- Aug 13, 2010, 16:47 UTC
- Message-ID
- <20100813164736.GA27540@nibiru.local>
- In-Reply-To
- <20100809092152.5f32646a@packard.rktmb.org>
* Mihamina Rakotomandimby <mihamina@gulfsat.mg> wrote:
Hi,
> I would like to setup a similar thing but with > - Only one lieutenant (me) > - A blessed repository where I am the only one to push to > - Developers who push to me (the lieutenant)
if you really want them to push to you (instead of pull-requests), you could set up an ssh-based git repo, which restricts your devs to just their own branches (via .ssh/authorized_keys and wrapper commands) and do whatever you like (eg. generating pull-requests, open a ticked in some issue tracker, etc) in the post-update hook.
Show 6 quoted lines
> 1°) What command line do developers use to push to me but not to the > blessed (origin)? > 2°) After they pushed to me, I have the choice to "approve" or "reject" > a commit: what is the keyword and git option for that? > 3°) I push the merge of approved commits to the blessed repository: > what keywords and git options?
depends on your branch naming scheme.
man 1 git-push
you could even go some steps further and hack up wrappers/hooks which let your dev's pushes to the main repo / mainline branch to somewhere else (aka: masquerading). lets say your dev "Max" pushes to master, this will actually create some new branch "approveme/Max/$timestamp" instead of updating master itself. now you can regularily look through these branches and decide whether to merge or drop them. (BTW: I'd recommend always rebasing to master before merging into it - less chance of conflicts and cleaner history).
what you need is:
a) ssh key-authentication with individual per-user commands, which pass the dev's pushes to intermediate/temporary per-user repositories. b) hack up an post-update hook in the intermediate repo(s), which push their updates into the main repo with proper rewritten ref names (eg. "approveme/$username/$timestamp).
cu
-- ---------------------------------------------------------------------- Enrico Weigelt, metux IT service -- http://www.metux.de/ phone: +49 36207 519931 email: weigelt@metux.de mobile: +49 151 27565287 icq: 210169427 skype: nekrad666 ---------------------------------------------------------------------- Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme ----------------------------------------------------------------------