From: Junio C Hamano Date: Wed, 16 May 2007 02:30:21 GMT Subject: Re: pull/push inconsistencies Message-ID: <7vy7jpfqki.fsf@assigned-by-dhcp.cox.net> In-Reply-To: <46a038f90705151851i9027e01x993300b1b50d0285@mail.gmail.com> "Martin Langhoff" writes: >> I understand him to be saying that it *doesn't* do that, and that he >> *wants* it to. > > I'm probably in a bad-communication day :-/ Sorry, I think I am lacking my medication :-/ > I have locally .git/refs/remotes/origin/foo, and the remote repo has > refs/heads/foo. I don't have .git/refs/heads/foo in this case. When I > do git-push, it doesn't really change the remote repo, but it _tells_ > me it has. > > So - behaviour-wise, it's fine. It's not changing the remote repo. But > it tells me it does. It's just plain weird and misleading... I would agree with that it is misleading or plain wrong if it says it updated something that it didn't. >> People think of refs/remotes/origin as a cache of the origin >> repository's branch heads, and they expect it to be updated on write >> (push) as well as read (fetch). > > Yes ;-) On a related note, I think recent series from Daniel, parked in 'pu' while 1.5.2 is prepared, contained a new feature to update the refs/remotes/origin/* on the pushing repository after git-push, to save one round of fetch (that is, pretend that you fetched immediately after you pushed).