On Wed, 2009-03-18 at 19:34 +0000, John Carr wrote: > On Wed, Mar 18, 2009 at 7:04 PM, Owen Taylor <[email protected]> wrote: > > On Wed, 2009-03-18 at 11:05 -0600, Federico Mena Quintero wrote: > >> On Tue, 2009-03-17 at 11:59 -0400, Owen Taylor wrote: > >> > >> > C) You push that > >> > > >> > git push ssh://<user>@svn.gnome.org/exampleproj refs/heads/* > >> > refs/tags/* > >> > >> Wouldn't > >> > >> git push --all --tags url > >> > >> just work? > > > > You can't push --all --tags. I don't know why. If you 'git push --all' > > 'git push --tags', then you spam commits list. > > > >> I don't like the idea of sending tarballs and such; people seem to live > >> just fine with github's or gitorious's method of "just push whatever you > >> need". > >> > >> We may just need to give the "push --all --tags" recipe for the majority > >> of users. For people who have branches or tags that they don't want > >> published, they either already know what to do, or we can just tell them > >> "push each thing you want by hand" with a little recipe. > > > > Suggestions how to make "push stuff until it looks right" compatible > > with commits-list appreciated. > > > > - Owen > > One option is to have the setup scripts run in 2 stages - one to setup > the initial repository, and one to make it live. Its not ideal, but > given this is custom stuff that we will have to document on the wiki > anyway, I dont think this is too bad.. > > That brings up a second issue - what is the incentive to actually > fully finish the procedure. What if i forget to run step 2. We could > use a mixture of the following to encourage people to finish the > process: > > * Allow a window of x hours before it goes live - pushes after that > time get denied unless you run a script. This will soon get boring, > given how easy it is to say 'yes im happy, go live' > * Don't allow cloning over git:// (maybe dont allow pulling at all) > * Don't show in cgit > * Only allow repo creator to push > * Can we display a warning message when pushing/pulling? > > Maybe the commit list hook only happens when the repository has > existed for a couple of hours :-)
I think you want to allow people to clone, and look at things in cgit, since those are the mechanisms that allow people to know that their import is OK. But I like the general idea here. What if we: * Prepended [PENDING] to the cgit description * Required people to: git push --exec=import * Disallowed other git-push. Until you ssh [email protected] finish-import Then in the [PENDING] state we would skip the commit mail, allow creating lightweight tags, and allow deleting tags and branches (to fix up your screwups). We'd still have some of the other pre-receive hooks that we want to enforce on new imports. - Owen _______________________________________________ gnome-infrastructure mailing list [email protected] http://mail.gnome.org/mailman/listinfo/gnome-infrastructure
