Hi Peff, On Tue, 17 Jan 2017, Jeff King wrote: > On Tue, Jan 17, 2017 at 10:19:24PM +0100, Johannes Schindelin wrote: > > > One of the really nice features of the ~/.gitconfig file is that users > > can override defaults by their own preferred settings for all of their > > repositories. > > > > One such default that some users like to override is whether the > > "origin" remote gets auto-pruned or not. The user would simply call > > > > git config --global remote.origin.prune true > > > > and from now on all "origin" remotes would be pruned automatically when > > fetching into the local repository. > > > > There is just one catch: now Git thinks that the "origin" remote is > > configured, as it does not discern between having a remote whose > > fetch (and/or push) URL and refspec is set, and merely having > > preemptively-configured, global flags for specific remotes. > > > > Let's fix this by telling Git that a remote is not configured unless any > > fetch/push URL or refspect is configured explicitly. > > Hmm. Old versions of GitHub for Windows used to set fetch refspecs in > the system gitconfig, for a similar purpose to what you want to do with > remote.origin.prune. > > I notice here that setting a refspec _does_ define a remote. Is there a > reason you drew the line there, and not at, say, whether it has a URL? I want to err on the side of caution. That's why. Ciao, Johannes