Dear diary, on Mon, Apr 11, 2005 at 01:14:57AM CEST, I got a letter
where Paul Jackson <[EMAIL PROTECTED]> told me that...
> Useful explanation - thanks, Linus.
> 
> Is this picture and description accurate:
> 
> ==============================================================
> 
> 
>              < working directory files (foo.c) >
>                            ^
>   ^                        |
>   |  upward ops            |            downward ops  |
>   |  ----------            |            ------------  |
>   | checkout-cache         |            update-cache  |
>   | show-diff              |                          v
>                            v
>         < current directory cache (".dircache/index") >
>                            ^
>   ^                        |
>   |  upward ops            |            downward ops  |
>   |  ----------            |            ------------  |
>   |   read-tree            |             write-tree   |
>   |                        |            commit-tree   |
>                            |                          v
>                            v
> < git filesystem (blobs, trees, commits: .dircache/{HEAD,objects}) >

Well, except that from purely technical standpoint commit-tree has
nothing to do in this picture - it creates new object in the git
filesystem based on its input data, but regardless to the directory
cache or current tree. It probably still belongs where it is from the
workflow standpoint, though.

..snip..
> Minor question:
> 
>   I must have an old version - I got 'git-0.03', but
>   it doesn't have 'checkout-cache', and its 'read-tree'
>   directly writes my working files.
>  
>   How do I get a current version?  Well, one way I see,
>   and that's to pick up Pasky's:
>     
>     http://pasky.or.cz/~pasky/dev/git/git-pasky-base.tar.bz2
>  
>   Perhaps that's the best way?

You can take mine, and do:

        git pull pasky
        git pull linus
        cp .dircache/HEAD .dircache/HEAD.local

Now, your tree and git filesystem is up to date.

        git track local

Now, when you do git pull pasky, your working tree will not be updated
automatically anymore.

        git track linus

Now, you start tracking Linus' tree instead. Note that the initial
update will blow away the scripts in your current tree, so before you do
the last two steps you will probably want to clone the tree and set PATH
to the one still tracking me, so you get all the comfort. ;-)

-- 
                                Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
98% of the time I am right. Why worry about the other 3%.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to