git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: 'git checkout -f' versus 'git reset --hard'

From
Jeff King <peff@peff.net>
Date
Apr 5, 2007, 13:43 UTC
Message-ID
<20070405134311.GA18163@coredump.intra.peff.net>
In-Reply-To
<17940.64329.10165.993967@lisa.zopyra.com>
On Thu, Apr 05, 2007 at 08:36:09AM -0500, Bill Lear wrote:
> After a failed merge, I want to undo things.  I typically use git
> reset --hard, and it works like a charm.  Others have tried to use git
> checkout -f, but I have cautioned that git reset --hard is really the
> way to do it.  Is there a difference here, or are they equivalent?

Skimming through the code (and looking at the output of sh -x), it looks like both just end up executing git-read-tree --reset -u $HEAD.

-Peff
Previous: Bill LearNext: Shawn O. Pearce
Message 2 of 4 in “'git checkout -f' versus 'git reset --hard'”
  1. Bill LearApr 5, 2007
  2. Jeff KingApr 5, 2007
  3. Shawn O. PearceApr 5, 2007
  4. Linus TorvaldsApr 5, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.