From: Linus Torvalds Date: Tue, 12 Jun 2007 18:01:52 GMT Subject: Re: Problem with a push Message-ID: In-Reply-To: <7vk5u9hzv9.fsf@assigned-by-dhcp.pobox.com> On Tue, 12 Jun 2007, Junio C Hamano wrote: > > I think what we might want to do around this area are: > > - Don't change anything, if the command line says refspec, or > the remote has push refspec specified. > > - When doing 'matching refs', do it only under refs/heads/. I think these both are "obviously good". > - Ship with a receive-pack hook that attempts a 3-way merge > update when the currently checked out branch is updated. Well, if it wasn't a fast-forward, then the user did a push with "git push -f", which implies _replacing_ the currently checked out branch. So by three-way, I assume you mean the "git checkout -m" behaviour, and a fast-forward. What about a non-fast-forward (ie "git push -f"?) Should that imply "git checkout -f" semantics on the receiving side? That would kind of be sensible. Linus