On Tue, 21 Apr 2015 21:07:52 -0700 (PDT)
Tanveer Malik <tanmalik...@gmail.com> wrote:

> Ahh sorry, if I was not very clear in my question. What actually I am 
> looking for is a way to get the working copies of the files different
> from its parent branch e.g., I create a branch 'develop' from
> 'master', then work on files say style.css and on another file called
> abc.php. Now I want a way to get only these two files [style.css,
> abc.php] in the working directory.

`git show` does that.

For instance, you're working on "develop" but would like to get the
contents of a file "main.css" as it's currently on "master".
If so, you'd use

  git show master:main.css

to get the contents of "main.css" on "master" printed.

If you want to actually save it somewhere (it seems, you do), redirect
the output:

  git show master:main.css > whatever.css

If you redirect the output to "main.css" as well, its content will be
overwritten with the contents of "main.css" on "master" -- effectively
as if you've checked out that single file from "master".

Consequently, `git checkout` can do that as well ;-)
To replace the contents of a checked out file with its contents in
another revision, do

  git checkout <revision> <pathname1> <pathname2> ...

for instance, you could do

  git chekcout master main.css

Please note that all these examples assume the file named "main.css" is
in the root directory of the repository (and the work tree), that is,
at the top level.  If it's in a subdirectory (or deeper), you should
specify that part of a pathname as well, for instance:

  git show master:assets/styles/main.css
  git checkout master^3:assets/scripts/lib/jquery-min.js

You received this message because you are subscribed to the Google Groups "Git 
for human beings" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to