Alex Riesen <raa.lkml@xxxxxxxxx> writes: > The diffstat can be controlled either with command-line options > (--summary|--no-summary) or with merge.diffstat. The default is > left as it was: diffstat is active by default. > > Signed-off-by: Alex Riesen <raa.lkml@xxxxxxxxx> > --- > > I have to explain the implementation a bit: in Windows, every exec is > *very* expensive, so I tried to avoid a call to git-config as long as > possible. The stupid OS is my reason for this change, actually: > diffstat not just takes too long. It also takes a *long* while before > the diffstat even starts! Even on Linux, if your project is well modularized and your workflow is "merge small and merge often" like the kernel is, it is not unusual that the final diffstat takes much longer than a merge. But the diffstat is not an eye-candy but is an important safety measure from the workflow point of view. > @@ -168,6 +169,11 @@ do > shift > done > > +if test -z "$show_diffstat"; then > + test "$(git-config merge.diffstat)" = false && show_diffstat=false > + test -z "$show_diffstat" && show_diffstat=t > +fi Isn't this hunk wrong? [merge] diffstat = 0 diffstat = false should both mean "merge.diffstat is set to false". "git config --bool" does that. And when merge.diffstat does not appear in the configuration file, "git config --bool merge.diffstat" exits non-zero. if test -z "$show_diffstat"; then test "$(git-config --bool merge.diffstat)" = false && show_diffstat=false test -z "$show_diffstat" && show_diffstat=t fi - 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