Re: [PATCH] build: add default configuration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Sep 20, 2013 at 7:44 PM, David Aguilar <davvid@xxxxxxxxx> wrote:
> Felipe Contreras <felipe.contreras@xxxxxxxxx> wrote:
>>David Aguilar wrote:
>>> Felipe Contreras <felipe.contreras@xxxxxxxxx> wrote:
>>> >On Wed, Sep 18, 2013 at 9:30 PM, David Aguilar <davvid@xxxxxxxxx>
>>> >wrote:
>>> >>>On Wed, Sep 18, 2013 at 1:13 PM, David Aguilar <davvid@xxxxxxxxx>
>>> >wrote:
>>> >>>>
>>> >>>> Will this not conflict with folks that supply their own
>>gitconfig?
>>> >>
>>> >>> You mean people that provide their own ETC_GITCONFIG? If you mean
>>> >> distributions, their packaging would override /etc/gitconfig, if
>>you
>>> >> mean people that have already a /etc/gitconfig, packaging systems
>>> >> usually save the old one so they can solve the conflict manually
>>> >(e.g.
>>> >> /etc/gitconfig.pacsave). So no, it would not conflict.
>>> >>
>>> >> Yuck. Yes, that one. I package my own /etc/gitconfig (as we have
>>long
>>> >advertised as the "way to do it")
>>> >
>>> >You package /etc/gitconfig *outside* the git package? I don't see
>>how
>>> >that could have been ever advertised as the way to do it.
>>>
>>> Okay so how exactly are we supposed to do it?  Duh, rpm is the right
>>choice for redhat systems.
>>
>>The same way kerberos, mariadb, apache, and essentially every other
>>tool that
>>has a configuration file in /etc.
>
> Good point. These tools (apache, for example) allow inclusion of a directory.

Wrong. Apache does, but neither does kerberos, nor mariadb, which have
a single configuration file, at least on all the systems I've seen.

You act as if you have never seen .pacsave/.rpmsave (and so on) files
before, they a are pretty common sight when the user modifies the
configuration files, and as kerberos and mariadb demonstrate, pretty
successful projects can survive with a simple single configuration
file.

> Your patch does not add this capability, so by your own definition it's incomplete.  As-is, the patch is half-baked.

It's not incomplete, any more than kerberos, mariadb, and countless
other programs are.

> If we have a clear upgrade path -- eg "move your current configs over to /etc/git.d/your.conf" -- then it's a non-issue.

But now you contradict yourself. This patch would force users to
resolve the conflicts eventually through .pacsave/.rpmsave, and with
your proposal to have directory includes, it would also force manual
user intervention by moving the configuration files and resolve the
conflict.

So why is one manual user intervention so appalling, and the other one so right?

Either way, if this patch is so wrong, then clearly the RedHat
packaging team would remove /etc/gitconfig from the Git RPM package,
and you would be fine, wouldn't you?

Or maybe you are afraid that RedHat packaging team would agree that
the /etc/gitconfig file provided by Git is fine.

> As-is, you're asking users to manually deal with the fallout. You're also asking users to modify a package-manager controlled file (after your patch), which IMO is suboptimal.

In both cases the user has to manually deal with the fallout.

>>> >Users don't package /etc/gitconfig outside git.
>>>
>>> Wrong. Existence proof: me.
>>
>>You as a user are not packaging it, it's you as a system adimistrator.
>
> Strawman. I represent at least at least a hundred users, but who cares. It doesn't matter.  The patch is incomplete.

No you don't, you represent a system administrator, not a user.

>>Either
>>way, you are 0.0001% of Git's userbase, you are not representative.
>
> And your point is what exactly?  That once proven wrong you move the goalposts?

It's called colloquial language. If I say, "people don't bark on the
street", and then you say "here, there's a guy that does bark on the
street", and then I say, fine, "people don't *NORMALLY* bark on the
street", what have we achieved?

This is just an exercise in pedanticism.

Sane users, under normal circumstances, for the overwhelmingly vast
majority of situations, do not package their /etc/gitconfig file.

>>> >>>> I like the idea. Docs?  Also, should this not be done in the C
>>side
>>> >so that we don't waste time reading the config, and also prevent
>>users
>>> >from overriding these?
>>> >>
>>> >>> But we want them to be easily readable, and possibly allow
>>> >> distributions to easily modify them.
>>> >>
>>> >> In that case I take it back -- I dont like that approach.  We want
>>> >consistency, not divergence. This encourages the former.
>>> >
>>> >So you think we have more consistency right now? We don't even have
>>a
>>> >predefined /etc/gitconfig, that creates more inconsistency, as
>>> >everybody's configs and aliases are very very different.
>>> >
>>> >This patch would definitely make things more consistent.
>>>
>>> We don't need this patch to allow distros to modify aliases.
>>Likewise, allowing the aliases to diverge is less consistent. Do it at
>>a lower level.
>>
>>We already allow the aliases to diverge, we allow it much more.
>>
>>The pach will make the aliases more consistent.
>>
>>> I also agree with Junio's notes about "ci". Something short that can
>>add and remove from the index would be nice.
>>
>>cvs ci, svn ci, hg ci, they all work, but suddenly ci is not good
>>enough for Git? Yeah, sure.
>
> IMO this isn't the kind of thing that you or I can decide in isolation.  Maybe it is, or maybe the real differences between the "ci" mental model are enough that it isn't. But you don't actually know the answer. You might think you do, but your guess is just as good/bad/ugly as mine.

I know 'git ci' is perfectly fine shortcut to 'git commit'.

Either way, it doesn't matter. Even if we agree that /etc/gitconfig.d
is what we want, or we add an /usr/share/git/config, Junio is not
going to apply any patch, even if it's what most users want.

-- 
Felipe Contreras
--
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




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]