Thought I'd chime in here, as I've been going through the git
transition pains myself recently, and the other answers have been all
about the "what" and not the "why" of the task.

Git adds an extra level of indirection that you're not used to: the
cvs/svn model of the world had only one repository.  So when you
wanted to "forget" a modified file you would just remove it and issue
the command ("update") that copies changes from the repository to your
working directory.  The act of "forgetting" a change was identical
with fetching new changes from upstream, so you used the same command.

With git, those are two different tasks!  The command to pull changes
(not current data, just changes against what you already have) from
another repository is "pull"*.  If it happens that someone else has
pushed a change to the file you want restored, this will actually do
what you want, but only by accident.

The command to copy stored versions in your local (!) repository,
which is what you want to do, is (unfortunately, IMHO**) named
"checkout".  This will by default copy from whatever the head your
current branch is, and you can specify file or directory names.

Andy

* Which is really the combination of two lower-level commands: "fetch"
  simply copies in the branch data but doesn't touch your current
  working area, and "merge" which merges changes from another branch
  into your working tree.

** It's only "checking out" of a local repo you control.  Originally
   the term was a metaphor for library borrowing: you checked out a
   SCCS/RCS file the same way you did a book, and gave it back when
   you were done.  The git usage implies that it's touching shared
   data somewhere, when it's not.

------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate 
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
lucky parental unit.  See the prize list and enter to win: 
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
Flightgear-devel mailing list
Flightgear-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/flightgear-devel

Reply via email to