On Tue, 17 Oct 2006, Johannes Schindelin wrote: > > > > Unless you have branch(es) with totally different contents, like git.git > > 'todo' branch. > > But I _do_ work with it! I just don't need to "checkout" it! Example: > > git -p cat-file -p todo:TODO Ok, if there ever was an example of a strange git command-line, that was it. > (How about making git-cat be a short cuut to "git -p cat-file -p"?) Well, you can just add [alias] cat=-p cat-file -p to your ~/.gitconfig file, and you're there. [ For all the non-git people here: the first "-p" is shorthand for "--paginate", and means that git will automatically start a pager for the output. The second "-p" is shorthand for "pretty" (there's no long-format command line switch for it, though), and means that git cat-file will show the result in a human-readable way, regardless of whether it's just a text-file, or a git directory ] So then you can do just git cat todo:TODO and you're done. [ So for the non-git people, what that will actually _do_ is to show the TODO file in the "todo" branch - regardless of whether it is checked out or not, and start a pager for you. ] I actually do this sometimes, but I've never done it for branches (and I do it seldom enough that I haven't added the alias). I do it for things like git cat v2.6.16:Makefile to see what a file looked like in a certain tagged release. People sometimes find the git command line confusing, but I have to say, the thing is _damn_ expressive. I've never seen anybody else do things like the above that git does really naturally, with not that much confusion really. Even that "alias" file is quite readable, although I'd suggest writing out the switches in full, ie [alias] cat=--paginate cat-file -p instead. That kind of helps explains what the alias does and avoids the question of why there are two "-p" switches. Linus - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html