From: Matthieu Moy Date: Tue, 09 Jun 2015 13:17:10 GMT Subject: Re: On undoing a forced push Message-ID: In-Reply-To: <20150609121221.GA14126@lanh> Duy Nguyen writes: > From a thread on Hacker News. It seems that if a user does not have > access to the remote's reflog and accidentally forces a push to a ref, > how does he recover it? In order to force push again to revert it > back, he would need to know the remote's old SHA-1. Local reflog does > not help because remote refs are not updated during a push. More precisely, the remote-tracking ref is updated, and so is its reflog, but the reflog entry usually does not help, because it documents the old and new sha1 of the remote-tracking ref, not of the remote ref itself. Typically, if a coworker pushed some code that I did not pull, and I force-push to the same branch, my reflog won't have the sha1 of my coworker's code. > This patch prints the latest SHA-1 before the forced push in full. Sounds like a good idea to me. -- Matthieu Moy http://www-verimag.imag.fr/~moy/