* Feature request: relative paths
@ 2010-05-06 6:01 Eli Barzilay
2010-05-06 8:31 ` Jonathan Nieder
0 siblings, 1 reply; 6+ messages in thread
From: Eli Barzilay @ 2010-05-06 6:01 UTC (permalink / raw)
To: git
An svn feature that I used a lot is `svn cat some-file' -- and with
git I can get close to that with `git show :some-file', except that
unlike other paths, it must be an absolute path from the repository
root. I could obviously make up a script that will do it, but that's
just buying myself some time until I find some other command where
I'll want to use it.
It looks like it would be relatively easy to do this, since when I do
specify the relative path I get an error message suggesting the full
one (provided that the relative path is simple -- no ".." etc). So,
now that I can actually UTSL, I went there, and tried some half-assed
hacking -- I made it so "::path" uses the prefix and normalizes the
result, so, for example
cd git/Documentation
git show ::../Documentation/./user-manual.conf
works as expected. Using "::" looks bad IMO, and the hack I did is
likely suffering from some problems, but overall it doesn't look too
hard.
--
((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay:
http://barzilay.org/ Maze is Life!
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Feature request: relative paths
2010-05-06 6:01 Feature request: relative paths Eli Barzilay
@ 2010-05-06 8:31 ` Jonathan Nieder
2010-05-06 8:46 ` Björn Steinbrink
0 siblings, 1 reply; 6+ messages in thread
From: Jonathan Nieder @ 2010-05-06 8:31 UTC (permalink / raw)
To: Eli Barzilay; +Cc: git
Eli Barzilay wrote:
> An svn feature that I used a lot is `svn cat some-file' -- and with
> git I can get close to that with `git show :some-file'
git show -- some-file
Hope that helps,
Jonathan
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Feature request: relative paths
2010-05-06 8:31 ` Jonathan Nieder
@ 2010-05-06 8:46 ` Björn Steinbrink
2010-05-06 9:01 ` Jonathan Nieder
2010-05-06 9:04 ` Jeff King
0 siblings, 2 replies; 6+ messages in thread
From: Björn Steinbrink @ 2010-05-06 8:46 UTC (permalink / raw)
To: Jonathan Nieder; +Cc: Eli Barzilay, git
On 2010.05.06 03:31:13 -0500, Jonathan Nieder wrote:
> Eli Barzilay wrote:
>
> > An svn feature that I used a lot is `svn cat some-file' -- and with
> > git I can get close to that with `git show :some-file'
>
> git show -- some-file
That's the same as "git show HEAD -- some-file" though, which shows a
commit with path-limited diff output. While ":some-file" (most likely)
identifies a blob, so "git show :some-file" shows the contents stored in
that blob.
Björn
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Feature request: relative paths
2010-05-06 8:46 ` Björn Steinbrink
@ 2010-05-06 9:01 ` Jonathan Nieder
2010-05-06 9:09 ` Jeff King
2010-05-06 9:04 ` Jeff King
1 sibling, 1 reply; 6+ messages in thread
From: Jonathan Nieder @ 2010-05-06 9:01 UTC (permalink / raw)
To: Björn Steinbrink; +Cc: Eli Barzilay, git
Björn Steinbrink wrote:
> On 2010.05.06 03:31:13 -0500, Jonathan Nieder wrote:
>> git show -- some-file
>
> That's the same as "git show HEAD -- some-file" though, which shows a
> commit with path-limited diff output.
Thanks for catching the thinko.
> While ":some-file" (most likely)
> identifies a blob, so "git show :some-file" shows the contents stored in
> that blob.
I suggest reviving Dscho’s :./ syntax[1].
Cheers,
Jonathan
[1] http://thread.gmane.org/gmane.comp.version-control.git/68786/focus=68905
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Feature request: relative paths
2010-05-06 8:46 ` Björn Steinbrink
2010-05-06 9:01 ` Jonathan Nieder
@ 2010-05-06 9:04 ` Jeff King
1 sibling, 0 replies; 6+ messages in thread
From: Jeff King @ 2010-05-06 9:04 UTC (permalink / raw)
To: Björn Steinbrink; +Cc: Jonathan Nieder, Eli Barzilay, git
On Thu, May 06, 2010 at 10:46:07AM +0200, Björn Steinbrink wrote:
> > git show -- some-file
>
> That's the same as "git show HEAD -- some-file" though, which shows a
> commit with path-limited diff output. While ":some-file" (most likely)
> identifies a blob, so "git show :some-file" shows the contents stored in
> that blob.
Yep. What Eli actually wants is to allow relative path specifiers in
tree-selectors. So you could do:
git show :./some-file
or even
git show HEAD~20:./some-file
and the "./" bit would magically expand into the current prefix within
the working tree.
This has come up several times on the list. It is a little bit of a
layering violation, because "treeish:path" may or may not bear any
resemblence to your current working tree. And the parsing of that syntax
happens in a fairly deep, library-ish place which doesn't know anything
about the working tree. However, in practice, I think it would be
extremely useful (because your working tree _does_ tend to be related to
the tree-ishs that you look at, especially if that tree-ish is HEAD).
I think in the past there was some vague negative sentiment around the
issues I described above. I don't think an actual patch was ever
produced, but I might be wrong. I suspect the only way to move the
discussion forward would be to actually show a patch.
-Peff
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Feature request: relative paths
2010-05-06 9:01 ` Jonathan Nieder
@ 2010-05-06 9:09 ` Jeff King
0 siblings, 0 replies; 6+ messages in thread
From: Jeff King @ 2010-05-06 9:09 UTC (permalink / raw)
To: Jonathan Nieder; +Cc: Björn Steinbrink, Eli Barzilay, git
On Thu, May 06, 2010 at 04:01:33AM -0500, Jonathan Nieder wrote:
> I suggest reviving Dscho’s :./ syntax[1].
> [1] http://thread.gmane.org/gmane.comp.version-control.git/68786/focus=68905
Oops, I was wrong about "there is no patch" (apparently I even submitted
a followup!).
Yes, I think that patch is a sane start, but it needs some cleanup.
-Peff
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2010-05-06 9:09 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-05-06 6:01 Feature request: relative paths Eli Barzilay
2010-05-06 8:31 ` Jonathan Nieder
2010-05-06 8:46 ` Björn Steinbrink
2010-05-06 9:01 ` Jonathan Nieder
2010-05-06 9:09 ` Jeff King
2010-05-06 9:04 ` Jeff King
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).