git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Linus Torvalds <torvalds@osdl.org>
To: Carl Worth <cworth@cworth.org>
Cc: "Nicolas Vilz 'niv'" <niv@iaglans.de>, git <git@vger.kernel.org>
Subject: Re: several quick questions
Date: Tue, 14 Feb 2006 10:34:35 -0800 (PST)	[thread overview]
Message-ID: <Pine.LNX.4.64.0602141026570.3691@g5.osdl.org> (raw)
In-Reply-To: <87k6bxvmj6.wl%cworth@cworth.org>



On Tue, 14 Feb 2006, Carl Worth wrote:
> 
> I don't know if it's the original poster's question or not, but an
> operation I don't see in the above is "put the working files into the
> state of a given revision".

What a strange thing to ask for.

But you can do it several ways:

 - just use "git reset" to move around in history, possibly on a temporary 
   branch.

 - use "git checkout <rev> <filename>" to checkout a particular filename 
   of a particular version (it's a special case of "git checkout", which 
   is useful, but I personally think it's a bit confusing, so I wouldn't 
   mention it unless you asked)

 - use the core internal git functions, in particular

	git-read-tree -m -u <oldtree> <newtree>

   will switch from "oldtree" to "newtree" and update (-u) the working 
   tree.

> 2) Ensure that bogus-branch exists somewhere (don't care where), then
>    move it:
> 
> 	# Create the branch (if it doesn't exist)
> 	git checkout -b bogus-branch >& /dev/null
> 	# Switch to it (which doesn't happen above if it already existed)
> 	git checkout bogus-branch
> 	# Move the branch to the revision of interest
> 	git reset --hard <revision>

This is actually what I'd suggest you always do.

Why?

It's actually as efficient as anything else, and there's much less room 
for confusion. When you want to go back, you can just do a simple

	git checkout -f master

and there's no room for confusion. You've not lost sight of any old state, 
and your HEAD never differs from your checked-out copy, so all the normal 
commands work the way you'd expect them to.

		Linus

  reply	other threads:[~2006-02-14 18:35 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-02-14 16:28 several quick questions Nicolas Vilz 'niv'
2006-02-14 17:03 ` Andreas Ericsson
2006-02-14 21:30   ` Nicolas Vilz 'niv'
2006-02-14 17:05 ` Linus Torvalds
2006-02-14 17:47   ` Kenneth Johansson
2006-02-14 18:08     ` Andreas Ericsson
2006-02-14 18:21       ` Kenneth Johansson
2006-02-14 18:26     ` Linus Torvalds
2006-02-14 18:10   ` Carl Worth
2006-02-14 18:34     ` Linus Torvalds [this message]
2006-02-14 20:10       ` Carl Worth
2006-02-14 20:27         ` Petr Baudis
2006-02-14 20:37           ` Johannes Schindelin
2006-02-14 20:41             ` Junio C Hamano
2006-02-14 20:54               ` Johannes Schindelin
2006-02-14 20:55             ` Petr Baudis
2006-02-14 20:40         ` Linus Torvalds
2006-02-14 21:19           ` Petr Baudis
2006-02-14 21:53           ` Carl Worth
2006-02-14 22:39             ` Junio C Hamano
2006-02-23 20:31               ` [PATCH] New git-seek command with documentation and test Carl Worth
2006-02-24  0:18                 ` J. Bruce Fields
2006-02-24  1:01                   ` [PATCH] git-seek: Eliminate spurious warning. Fix errant reference to git-bisect in docs Carl Worth
2006-02-24  6:02                     ` Junio C Hamano
2006-02-24 10:00                 ` [PATCH] New git-seek command with documentation and test Andreas Ericsson
2006-02-24 11:38                   ` Junio C Hamano
2006-02-24 14:23                   ` Carl Worth
2006-02-24 21:48                     ` Johannes Schindelin
2006-02-24 21:57                       ` J. Bruce Fields
2006-02-14 21:30         ` several quick questions Josef Weidendorfer
2006-02-14 21:40           ` Junio C Hamano
2006-02-14 22:17             ` Josef Weidendorfer
2006-02-14 22:26               ` Junio C Hamano
2006-02-15 19:22                 ` [PATCH] More useful/hinting error messages in git-checkout Josef Weidendorfer
2006-02-14 23:00             ` several quick questions Andreas Ericsson
2006-02-14 23:23               ` Johannes Schindelin
2006-02-15  0:08                 ` Andreas Ericsson
2006-02-15  0:34                   ` Junio C Hamano
2006-02-15  6:27               ` Junio C Hamano
2006-02-15  9:06                 ` Andreas Ericsson
2006-02-15  9:21                   ` Junio C Hamano
2006-02-14 21:41           ` Petr Baudis
2006-02-14 18:44     ` Carl Worth
2006-02-14 19:00       ` Linus Torvalds
2006-02-14 19:38         ` Andreas Ericsson
2006-02-14 20:34           ` Johannes Schindelin
2006-02-14 20:14         ` Carl Worth
2006-02-14 18:55     ` Keith Packard
2006-02-14 19:04       ` Linus Torvalds
2006-02-14 19:39         ` Keith Packard
     [not found]           ` <20060214220154.GJ31278@pasky.or.cz>
     [not found]             ` <1139960934.4341.93.camel@evo.keithp.com>
     [not found]               ` <20060215000737.GF9573@pasky.or.cz>
     [not found]                 ` <1139963183.4341.117.camel@evo.keithp.com>
2006-02-15  1:12                   ` Cogito turbo-introduction Petr Baudis
2006-02-15  1:32                     ` Petr Baudis
2006-02-15  4:11           ` several quick questions Martin Langhoff
2006-02-15  5:25             ` Keith Packard
2006-02-15  8:21               ` Carl Worth
2006-02-14 19:13     ` Junio C Hamano
2006-02-14 19:46 ` Petr Baudis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Pine.LNX.4.64.0602141026570.3691@g5.osdl.org \
    --to=torvalds@osdl.org \
    --cc=cworth@cworth.org \
    --cc=git@vger.kernel.org \
    --cc=niv@iaglans.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).