Re: svn versus git

2 messages, 2 authors, 2016-08-11 · open the first message on its own page

Re: svn versus git

From: Horst H. von Brand <hidden>
Date: 2016-08-11 19:34:59

Jakub Narebski [off-list ref] wrote:
Andy Parkins wrote:
quoted
On Wednesday 2006 December 13 22:56, Shawn Pearce wrote:
quoted
  git cat-file -p $REV:$file

not sure how much easier it gets than that.  Load in the bash
completion from contrib/completion and you can even tab complete
the $file part.
Yes.  I was a little unfair on that one; I forgot about the REV:file syntax.  
However, it's still not simple for a new user; I think I'd say "draw" if 
the "-p" weren't a requirement.
  $ git repo-config alias.less "-p cat-file -p"
  $ git repo-config alias.cat     "cat-file -p"

remedies that.

[...]
quoted
quoted
How is it unfriendly?  What specifically would you change to make
it more friendly?
$ git-ls-tree v1.0.0
100644 blob 906e98492080d2fde9467a9970fc92d7a8cfeaf8    Makefile
quoted
I'm a newbie: what's that number at the front?  What's a blob?  What's
that great big number - I've only seen commit hashes that look like
that, and that isn't one.  Definitely not friendly.
The number in front is octal mode of a file or directory. "blob"
is a file (or symbolic link), "tree" is a directory, all of this
can be found in git(7).
I don't want to come through as rude, but that you can find the explanation
somewhere (and as an old(ish) Unix/git hand you know (or should be able to
guess easily) what it means) doesn't help the _newbie_ confronted with this
gibberish one iota. Explaining it it the git list also doesn't help. Either
make it self-explanatory, relegate this command to git-plumbing or axe its
output (perhaps show this only with --verbose or such, with Unix you get
fast to the point where you know --verbose is probably totally mistifying
except for /real/ experts :-).

[...]
Perhaps we should add git-ls which would be porcelain frontend
to git-ls-files and git-ls-tree, just like git-diff is frontend
to git-diff-files, git-diff-index and git-diff-tree (and also does
pure blob diff).
That is a more newbie-friendly answer.
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                    Fono: +56 32 2654431
Universidad Tecnica Federico Santa Maria             +56 32 2654239

Re: svn versus git

From: Andreas Ericsson <hidden>
Date: 2016-08-11 20:32:59

Horst H. von Brand wrote:
Jakub Narebski [off-list ref] wrote:
quoted
Andy Parkins wrote:
quoted
On Wednesday 2006 December 13 22:56, Shawn Pearce wrote:
quoted
  git cat-file -p $REV:$file

not sure how much easier it gets than that.  Load in the bash
completion from contrib/completion and you can even tab complete
the $file part.
Yes.  I was a little unfair on that one; I forgot about the REV:file syntax.  
However, it's still not simple for a new user; I think I'd say "draw" if 
the "-p" weren't a requirement.
  $ git repo-config alias.less "-p cat-file -p"
  $ git repo-config alias.cat     "cat-file -p"

remedies that.

[...]
quoted
quoted
How is it unfriendly?  What specifically would you change to make
it more friendly?
$ git-ls-tree v1.0.0
100644 blob 906e98492080d2fde9467a9970fc92d7a8cfeaf8    Makefile
quoted
quoted
I'm a newbie: what's that number at the front?  What's a blob?  What's
that great big number - I've only seen commit hashes that look like
that, and that isn't one.  Definitely not friendly.
quoted
The number in front is octal mode of a file or directory. "blob"
is a file (or symbolic link), "tree" is a directory, all of this
can be found in git(7).
I don't want to come through as rude, but that you can find the explanation
somewhere (and as an old(ish) Unix/git hand you know (or should be able to
guess easily) what it means) doesn't help the _newbie_ confronted with this
gibberish one iota.

I think it would help if we could write out things ls-style though and 
I'm all for axing the SHA1 (I don't even think the SHA1 of specific 
files of a tree can be *used* for anything), so the above would be

-rw-r--r-- Makefile

which most newbies should grok fairly quickly. Not least because it's 
familiar, and we can even toss in the size in that string without taking 
up too much screen real estate. If we try really hard to cater to people 
who have never seen ls output we're gonna end up annoying the other side 
of the camp so much that they'll walk away in disgust.

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help