From: Nick Hengeveld Date: Tue, 07 Feb 2006 23:48:12 GMT Subject: Re: git-http-push and hooks Message-ID: <20060207234812.GC3833@reactrix.com> In-Reply-To: <7vpslysqcb.fsf@assigned-by-dhcp.cox.net> On Tue, Feb 07, 2006 at 03:26:28PM -0800, Junio C Hamano wrote: > If I and you clone from a shared repository at the same time, I > did my development while you did your own on top of that same > commit without pulling from the repository further, and I > uploaded my changes to update the ref, what should happen to you > once you are ready to push? > > Is that what being asked? > > If so, I think the sensible thing to do is to reject your push > and suggest you to pull first, just like the git native protocol > push does. That pull would end up first merging my changes to > your work in your repository, and then you can push the result > back to the shared repository. Otherwise you would lose my > changes. Makes sense, and it's the way http-push already works for heads. I guess where I'm not clear is tags - since info/refs is generated by recursing through everything in the refs/ subdirectory. I think I just answered my own question though; http-push needs to recurse through everything under refs/ on the remote end to generate the new info/refs file. That just leaves the problem that http-push doesn't push tags yet. -- For a successful technology, reality must take precedence over public relations, for nature cannot be fooled.