On Tue, Sep 12, 2023 at 8:45 AM Leonardo Bras <leobras@xxxxxxxxxx> wrote: > > When reviewing patches, it looks much nicer to have some changes shown > before others, which allow better understanding of the patch before the > the .c files reviewing. > > Introduce a default git.orderFile, in order to help developers getting the > best ordering easier. > > Signed-off-by: Leonardo Bras <leobras@xxxxxxxxxx> > --- > > Please provide feedback on what else to add / remove / reorder here! > > Changes since RFCv1: > - Added Kconfig* (thanks Randy Dunlap!) > - Changed Kbuild to Kbuild* (improve matching) > > scripts/git.orderFile | 32 ++++++++++++++++++++++++++++++++ > 1 file changed, 32 insertions(+) > create mode 100644 scripts/git.orderFile > > diff --git a/scripts/git.orderFile b/scripts/git.orderFile > new file mode 100644 > index 000000000000..819f0a957fe3 > --- /dev/null > +++ b/scripts/git.orderFile > @@ -0,0 +1,32 @@ > +/* SPDX-License-Identifier: GPL-2.0 */ > + Please use "# SPDX-License-Identifier: GPL-2.0". /* ... */ is not a valid comment style for the orderfile. > +# order file for git, to produce patches which are easier to review > +# by diffing the important stuff like header changes first. > +# > +# one-off usage: > +# git diff -O scripts/git.orderfile ... > +# > +# add to git config: > +# git config diff.orderFile scripts/git.orderfile These comments are bogus. I guess this comment header was copied from QEMU, but you changed the file path from scripts/git.orderfile to scripts/git.orderFile. You need to adjust the comment lines to git diff -O scripts/git.orderFile ... git config diff.orderFile scripts/git.orderFile Or, you need to get the file path back to scripts/git.orderfile > +# > + > +MAINTAINERS > + > +# Documentation > +Documentation/* > +*.rst > + > +# build system > +Kbuild* > +Kconfig* > +Makefile* Kbuild* and Makefile* are interchangeable. (both are for GNU Make) Kconfig* are different types. Better to arrange the order to Kconfig* Kbuild* Makefile* > +*.mak QEMU consistently uses only *.mak. I just realized the kernel tree uses both *.mak and *.mk masahiro@zoe:~/ref/linux(master)$ find . -name '*.mak' ./tools/scripts/utilities.mak masahiro@zoe:~/ref/linux(master)$ find . -name '*.mk' ./tools/testing/selftests/lib.mk ./tools/testing/selftests/ptp/testptp.mk BTW, I quickly tested this, but it did not work as I expected. masahiro@zoe:~/ref/linux(aaa)$ git diff --name-only d34599b^..d34599b MAINTAINERS drivers/Kconfig drivers/Makefile drivers/cache/Kconfig drivers/cache/Makefile drivers/cache/ax45mp_cache.c masahiro@zoe:~/ref/linux(aaa)$ git diff --name-only -O scripts/git.orderFile d34599b^..d34599b MAINTAINERS drivers/cache/ax45mp_cache.c drivers/Kconfig drivers/Makefile drivers/cache/Kconfig drivers/cache/Makefile masahiro@zoe:~/ref/linux(aaa)$ git diff --name-only -O scripts/git.orderFile d34599b..d34599b^ MAINTAINERS drivers/cache/ax45mp_cache.c drivers/Kconfig drivers/Makefile drivers/cache/Kconfig drivers/cache/Makefile My expectation was the following: MAINTAINERS drivers/Kconfig drivers/cache/Kconfig drivers/Makefile drivers/cache/Makefile drivers/cache/ax45mp_cache.c It did not work like that. Am I missing something? > + > +# semantic patches > +*.cocci > + > +# headers > +*.h > + > +# code > +*.c > -- > 2.42.0 > -- Best Regards Masahiro Yamada