Junio C Hamano <gitster@xxxxxxxxx> writes: > Alex Henrie <alexhenrie24@xxxxxxxxx> writes: > >> What if we make log.graph=true also require feature.experimental=true? > > No. feature.experimental is to give people an opt-in opportunity > for features that we are considering to enable by default. > >> The log.graph option would really be a useful feature for people who >> use Git exclusively from the CLI without any external tools. It seems >> that the main challenge is how to give others time to adjust. Let me clarify the first point by stating it a bit differently. feature.experimental is all about this: We have an idea for this new feature. We made it useful, and also made it not to regress the end-user experience for those who do not need the new feature, to the best of our ability. But there may be use cases we failed to consider while doing so. So let's ask early adopters, who may use Git in contexts that are very different from ours, to try testing it out in their daily use, to see if there are unexpected glitches. You do not have to argue how the --graph feature may be useful for character terminal users. We already know it is, otherwise we wouldn't have added it in the first place. And arguing how --graph feature is useful does not help prove anything, when at the issue is if it is a good idea to allow the log.graph configuration variable to affect (unfortunate) scripts people wrote around "git log", instead of using plumbing commands, negatively. We already know it will hurt to force everybody to update their script to explicitly pass --no-graph on the command line. This series hasn't done any of the "not to regress to the best of our ability" part. If there were an agreement on the general direction to _forbid_ use of "git log" in scripts, which would require coordinated efforts to help people migrate over time, e.g. - improve plumbing by adding features that people piled only on "git log" without allowing plumbing users the same over time. - perhaps an automated way to convert scripts that use "git log" to instead use "git log --no-graph" to help script writers migrate away from "git log", adding log.graph configuration variable may become very a good idea. But without such effort starting at the same time and gaining consensus (or already underway), just adding such a variable to break existing scripts would not be a good idea worth asking the early adopters to test. We already know it would break scripts.