Re: How do I get the file contents from an arbitrary revision to stdout?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Oct 08, 2021 at 05:51:17PM +0000, Alan Mackenzie wrote:

> I would like there to be a command something like:
> 
>     $ git cat bar-branch -- foo.c
> 
> ..  Is there such a command, and if so, what's it called and how do I use
> it?  I assumed it might be git cat-file, but I couldn't get it to work,
> and couldn't understand it's man page.

Konstantin pointed you at git-show, which is what I would have used. But
I just wanted to mention that you were on the right track. The
invocation you wanted was:

  git cat-file blob bar-branch:foo.c

or:

  git cat-file -p bar-branch:foo.c

(the "-p" is "pretty-print based on the object's type", so the two are
equivalent).

> Where might I have found this information for myself?

You found the cat-file manpage, which I agree is a bit thick. An
Examples section would probably help a lot.

The other thing that might have helped is the gitrevisions(7) page,
especially the <rev>:<path> entry. Your example above to use "<revs> --
<pathspec>" was a good thought, but the path there is for limiting diffs
and traversals. What you want here is to specify the name of a single
object, and gitrevisions gives all the ways to do that.

-Peff



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux