Re: The git spring cleanup challenge

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

 



On 2021-06-01 01:24:01-0500, Felipe Contreras <felipe.contreras@xxxxxxxxx> wrote:
> Hello,
> 
> The premise is simple: git.git developers are experts in git, and therefore
> they have fine-tuned their ~/.gitconfig to a point that is pretty far
> from what any newcomer will experience for a long time.
> 
> How long can you survive with a pristine configuration?
> 
> Plenty of developers take many things in their configuration for
> granted, they forget what the default behavior is, or worse: they forget
> they actually have configured log.decorate, and are surprised when they
> discover the reason they could not reproduce a bug report.

OK, the person that forgot having log.decorate configured is me.

> Now and then I cleanup my configuration to be reminded of that fact.
> 
> Anybody remembers merge.defaultToUpstream, and what `git merge` without
> arguments used to do? [1] What about sendemail.chainReplyTo? [2]
> 
> It's important that we force ourselves to experience what an
> unconfigured git setup looks like, even if it's just for a little bit.
> 
> So the challenge is this:
> 
>   1. Remove all the configuration that is not essential (just leave
>      user.name and user.email or equivalent)

How about alias? It's part of my muscle memory.

>   2. Pick 2 configurations you think you can't live without. You are not
>      allowed to change them afterwards.

Something is essential when working on constantly integration tree,
I don't want to make my life hard:

* rerere.enabled = true
* rerere.autoupdate = true

Something is there to shut up advice, I can live without those
configuration value, though (I don't use git-pull these days, anyway):

* pull.rebase = false

Working with patch based need:

* sendemail.smtpserver
* sendemail.smtpencryption
* sendemail.smtpuser
* credential.helper

My GnuPG key is Ed25519, and gpg v2 in my machine is named gpg2, so:
* gpg.program = gpg2

And I would like to try new shiny features:

* feature.experimental = true

>   3. Every day you can add 1 additional configuration (and update it the
>      next day).
>   4. The moment you add a 4th configuration you lose.

So, my baseline already requires 8 key-value pairs (ignoring alias and
pull.rebase). I'm lost already.

-- 
Danh



[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]

  Powered by Linux