Re: Decompressing a tree to a location other than the working directory

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

 



Joshua Shrader <jshrader83@xxxxxxxxx> writes:

> git checkout allows one to checkout a particular version of a certain
> path in the working directory.  Are there accessible plumbing commands
> that can be used to accomplish the same thing, but change the target
> directory.  For example, if I wanted to checkout a certain path, but
> wanted to check it out somewhere external to my working directory /
> repository?

Porcelain way: check out first example in git-archive(1) manpage

  EXAMPLES
  ========

  git archive --format=tar --prefix=junk/ HEAD | (cd /var/tmp/ && tar xf -)

       Create a tar archive that contains the contents of the latest commit
       on the current branch, and extract it in the /var/tmp/junk directory.

Plumbing way: after preparing index (it can be separate file than .git/index),
use "git checkout-index" as desceived in second example on manpage:

  EXAMPLES
  ========


  Using `git checkout-index` to "export an entire tree"

        The  prefix  ability  basically  makes  it trivial to use git check-
        out-index as an "export as tree" function.  Just  read  the  desired
        tree into the index, and do:

          $ git checkout-index --prefix=git-export-dir/ -a

        `git checkout-index` will "export" the index into the specified direc-
        tory.

        The final "/" is important. The exported name is literally just pre-
        fixed  with  the  specified string


-- 
Jakub Narebski
Poland
ShadeHawk on #git
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[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]