On Tuesday 2008 December 30 16:55:38 Conor Rafferty wrote: > Whoa there Stevey, I'm a windows user, don't forget I just assumed you were also a git user. ;) > However if this is what its gonna take to get what I want, then Im' > outta here. You aren't being entirely clear about what you want. > Getting a snapshot on the filesystem, in terms of a directory tree (not > a reference to, representation of etc etc. but a real life directory > tree, files and folders that you can actually interact with - build, > edit etc.), of a past version is a basic operation in my book. > Even in clearcase this was a cinch. Well, there's a lot of things about UNIX and Windows directories that git doesn't store. It'll restore the contents, sure, but not the permissions, timestamps, etc. However git also stores the *history*, if you don't care about that, tarballs or zip archives might actually be a better system for your purposes. But, each time you commit you've made some snapshot (completeness depends on what you staged with git add and friends) and recorded that snapshot as a "later point in time" from the last snapshot you "git checkout"ed. That new object (a "commit") can be identified by it's sha1. It holds a sha1 of all it's parents (also "commits") and of the snapshot alone (a "tree"). You've also figured out how to use lightweight tags to give names (other than their sha1) to your commits. > Is there anyone who can see anyway to do this simply, without a script, > without creating a branch ? Branching is arguably easier than tagging, and probably what you want to do instead. Sure, branches are mutable, but unsigned tags are also fairly mutable. > Personally I suspect "$ git checkout <version> ." is what should be > doing this. I'm pretty sure what you want is "git checkout <version>" not "git checkout <version> <paths>". They operate differently. Modern git can checkout a lightweight tag, but it's going to warn you that it not what you want. > - but if you want ppl out there in the user world to take this stuff on, > its gotta work for them Maybe others do, but I don't really see git as an end-user tool. It's a developer tool and rightly demands a bit of RTFMing before using it effectively. What you seem to *really* want is a bunch of named trees without any relationship between one another. IMHO, git isn't really good at that (but only because it demands to do more). A directory full of tarballs / zip-archives and a couple of scripts you wrote yourself (extract.sh; name-and-save.sh) would probably be better. I admit that there seems to be quite a niche for some sort of trivially usable VCS, but it needs to be good at merging spreadsheets, compressed/binary XML, presentations/decks, and other things not-text, have a pretty GUI, and run securely over TCP/IP ports that no one is willing to block. It will probably be next to useless for doing what git was initially designed for (managing Linux kernel patches). -- Boyd Stephen Smith Jr. ,= ,-_-. =. bss@xxxxxxxxxxxxxxxxx ((_/)o o(\_)) ICQ: 514984 YM/AIM: DaTwinkDaddy `-'(. .)`-' http://iguanasuicide.net/ \_/
Attachment:
signature.asc
Description: This is a digitally signed message part.