Thread (21 messages) flat view 21 messages, 11 authors, 2016-06-15

Re: [PATCH 2/2] completion: split __git_ps1 into a separate script

From: Ted Pavlic <hidden>
Date: 2016-06-15 22:53:53

The solution, proposed by Kerrick Staley[3], is to split the git script
in two; the part that deals with __git_ps1() in one (i.e.
git-prompt.sh), and everything else in another (i.e.
git-completion.bash).
Seems like this solution has popped up on lots of forums for about
every Linux distribution around the time the new bash completion was
introduced. I'm not sure Kerric Staley deserves sole attribution
(sorry Kerrick; I mean no offense).

Moreover, every time the subject of splitting __gitdir out comes up, a
side discussion about all of the complications that could cause comes
up... and people give up and hope that the folks upstream (i.e., here)
will come up with a better solution.

If it was so simple to just split __gitdir out, I think it would have
already been done.
The only slight issue is that __gitdir() would be duplicated, but this
is probably not a big deal.
That seems ugly. I know that splitting __gitdir out is also ugly, but
I know that there are going to be a lot more people who use git
completion than git_ps1. Consequently, in a duplicated __gitdir
scneario, I worry that __gitdir will receive more attention and may
relatively quickly diverge in implementation if not very careful in
approving patches. Moreover, a __gitdir of the future may not be
atomic and will pick up side effects and become impossible to manage
in two places.

So maybe a split out "git-gitdir.sh" that both files include would be
"better." Either that or the functionality of "__gitdir" gets pulled
into git itself. (perhaps a git-gitdir added to the main git
distribution)
Signed-off-by: Felipe Contreras <redacted>
As the patch is from you, there's no need to sign off on it too.

--Ted

-- 
Ted Pavlic [off-list ref]
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help