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

Re: "git revert" feature suggestion: revert the last commit to a file

From
IMIngo Molnar <mingo@elte.hu>
Date
Feb 5, 2009, 21:46 UTC
Message-ID
<20090205214630.GA28097@elte.hu>
In-Reply-To
<498B5418.4050103@xenotime.net>
* Randy Dunlap <rdunlap@xenotime.net> wrote:
Show 54 quoted lines
> Ingo Molnar wrote:
> > * Randy Dunlap <rdunlap@xenotime.net> wrote:
> > 
> >> Junio C Hamano wrote:
> >>> Ingo Molnar <mingo@elte.hu> writes:
> >>>
> >>>> So i have to do something like:
> >>>>
> >>>>    git revert $(git log -1 --pretty=format:"%h" kernel/softlockup.c)
> >>>>
> >>>> (tucked away in a tip-revert-file helper script.)
> >>>>
> >>>> But it would be so much nicer if i could do the intuitive:
> >>>>
> >>>>    git revert kernel/softlockup.c
> >>>>
> >>>> Or at least, to separate it from revision names cleanly, something like:
> >>>>
> >>>>    git revert -- kernel/softlockup.c
> >>> All three shares one issue.  Does the syntax offer you a way to give
> >>> enough information so that you can confidently say that it will find the
> >>> commit that touched the path most recently?  How is the "most recently"
> >>> defined?
> >>>
> >>> At least you can restate the first one to:
> >>>
> >>>     git revert $(git log -1 --pretty=format:"%h" core/softlockup -- kernel/softlockup.c)
> >>>
> >>> to limit to "the one that touched this file _on this topic_".
> >>>
> >>>> Would something like this be possible in generic Git? It would sure be a 
> >>>> nice little touch that i would make use of frequently.
> >>>>
> >>>> Or is it a bad idea perhaps? Or have i, out of sheer ignorance, failed to 
> >>>> discover some nice little shortcut that can give me all of this already?
> >>> The closest I can think of is
> >>>
> >>> 	git revert ':/the title of the commit'
> >>>
> >>> but it shares the exact same issue of "how would I limit the search space
> >>> to make sure it finds the right commit".
> >> And it should revert whatever commit is the last/most recent to the 
> >> currently used file, i.e., not always revert the same commit.
> > 
> > i'm not sure i understand, what do you mean precisely?
> 
> Just that someone should be able to use "git revert <filename>" on the
> same file more than one time and git will revert <last> then <last-1> then
> <last-2> etc...
> 
> Or it will always revert <last>, where <last> is relative to the currently
> used version of the file.
> 
> Does that help?
ah, i understand. No, the second time it should revert the revert.

Last commit means last commit - and a revert is just a normal commit. (it just happens to be generated as an inverse of an existing commit - but that relationship is not actually relied on and a revert can be edited, amended, etc.)

	Ingo
Previous: Randy DunlapNext: Ingo Molnar
Message 7 of 10 in “"git revert" feature suggestion: revert the last commit to a file”
  1. Ingo MolnarFeb 5, 2009
  2. Johannes SchindelinFeb 5, 2009
  3. Junio C HamanoFeb 5, 2009
  4. Randy DunlapFeb 5, 2009
  5. Ingo MolnarFeb 5, 2009
  6. Randy DunlapFeb 5, 2009
  7. Ingo MolnarFeb 5, 2009
  8. Ingo MolnarFeb 5, 2009
  9. Junio C HamanoFeb 6, 2009
  10. Johannes SchindelinFeb 6, 2009

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.