From: Junio C Hamano Date: Tue, 29 Nov 2005 06:38:33 GMT Subject: Re: [PATCH] Re: keeping remote repo checked out? Message-ID: <7vmzjom00m.fsf@assigned-by-dhcp.cox.net> In-Reply-To: Daniel Barkalow writes: > the two-way merge. That is, what I want to have work is: > > server$ git checkout production > work$ git push server:production > server$ git checkout > > and this should leave the working tree on server with the changes pushed > from work. I think the approach Linus was suggesting before he suggested the funny refs/heads/../.. symlink idea (honestly, I think he was half joking) is cleaner, easier to understand, easier to implement and generally makes more sense. Your work cycle would become like this: server$ git checkout production work$ git checkout master work$ git pull server production ;# merge into work's master work$ git push server master:receive_from_work server$ git pull . receive_from_work ;# merge into server's production and you make sure receive_from_work is not checked out on server (or production is never pushed into) and always do fast forward and nothing else.