# reverting changes

2 messages from 2013-04-04 to 2013-04-04. Participants: Thiago Farina, Junio C Hamano.
Thread: https://gitlist.dev/t/33388

## Thiago Farina, 2013-04-04 22:03

Subject: reverting changes
Message-ID: <CACnwZYe45poRihJToDY5yrLeY-wc=6HSjZBanjGvtiopbuAAFw@mail.gmail.com>
URL: https://gitlist.dev/e/CACnwZYe45poRihJToDY5yrLeY-wc%3D6HSjZBanjGvtiopbuAAFw%40mail.gmail.com

```
Hi,

When I want to revert a change to a file that is already committed
what is the best way?

The way I found was:

$ git checkout HEAD /path/to/my/file
$ git reset HEAD /path/to/my/file

Is this the canonical/best way or there other (easier-faster) ways?

Thanks,

```

## Junio C Hamano, 2013-04-04 22:19

Subject: Re: reverting changes
Message-ID: <7v8v4ygcre.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7v8v4ygcre.fsf%40alter.siamese.dyndns.org
In-Reply-To: <CACnwZYe45poRihJToDY5yrLeY-wc=6HSjZBanjGvtiopbuAAFw@mail.gmail.com>

```
Thiago Farina <tfransosi@gmail.com> writes:

> When I want to revert a change to a file that is already committed
> what is the best way?
>
> The way I found was:
>
> $ git checkout HEAD /path/to/my/file
> $ git reset HEAD /path/to/my/file
>
> Is this the canonical/best way or there other (easier-faster) ways?

If the issue you are solving is:

  What I committed to path/to/my/file is in good state.  I then
  edited path/to/my/file but it turns out that I do not like what I
  did.  I want the version I committed back (perhaps to start over,
  perhaps to do nothing further).

then you can checkout the path out of the commit, i.e.

	git checkout HEAD path/to/my/file

is the canonical and best way.

But I am not sure if that is what you are asking with "want to
revert a change to a file that is already commited".  It can be
read:

    I started from one state, made changes and have already
    committed them.  These changes were bad ones that I regret, and
    I do not want them.

and if so, "git checkout HEAD path/to/my/file" will happily grab the
state after these bad changes are applied out of the commit.

```
