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 <[email protected]>
Acked-by: Randy Dunlap <[email protected]>
---
Please provide feedback on what else to add / remove / reorder here!
Changes since RFCv3:
- Added "*types.h" matching so type headers appear before reguler headers
- Removed line ends ($) in patterns: they previously provided a
false-positive
- Fixed build patterns to allow matching Kconfig, Kbuild & Makefile
in any subdirectory
Changes since RFCv2:
- Fixed licence comment to from /**/ to #
- Fixed filename in how-to comment
- Fix build order: Kconfig -> Kbuild -> Makefile
- Add *.mk extension
- Add line-ends ($) to make sure and get the correct extensions
- Thanks Masahiro Yamada for above suggestions!
- 1 Ack, thanks Randy!
Changes since RFCv1:
- Added Kconfig* (thanks Randy Dunlap!)
- Changed Kbuild to Kbuild* (improve matching)
scripts/git.orderFile | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
create mode 100644 scripts/git.orderFile
diff --git a/scripts/git.orderFile b/scripts/git.orderFile
new file mode 100644
index 000000000000..7cef02cbba3c
--- /dev/null
+++ b/scripts/git.orderFile
@@ -0,0 +1,34 @@
+# SPDX-License-Identifier: GPL-2.0
+
+# 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
+#
+
+MAINTAINERS
+
+# Documentation
+Documentation/*
+*.rst
+
+# build system
+*Kconfig*
+*Kbuild*
+*Makefile*
+*.mak
+*.mk
+
+# semantic patches
+*.cocci
+
+# headers
+*types.h
+*.h
+
+# code
+*.c
--
2.42.0
CC: [email protected]
(typo on the original Cc: line)
On Wed, Sep 13, 2023 at 04:55:50AM -0300, Leonardo Bras 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 <[email protected]>
> Acked-by: Randy Dunlap <[email protected]>
> ---
>
> Please provide feedback on what else to add / remove / reorder here!
>
> Changes since RFCv3:
> - Added "*types.h" matching so type headers appear before reguler headers
> - Removed line ends ($) in patterns: they previously provided a
> false-positive
> - Fixed build patterns to allow matching Kconfig, Kbuild & Makefile
> in any subdirectory
>
> Changes since RFCv2:
> - Fixed licence comment to from /**/ to #
> - Fixed filename in how-to comment
> - Fix build order: Kconfig -> Kbuild -> Makefile
> - Add *.mk extension
> - Add line-ends ($) to make sure and get the correct extensions
> - Thanks Masahiro Yamada for above suggestions!
> - 1 Ack, thanks Randy!
>
> Changes since RFCv1:
> - Added Kconfig* (thanks Randy Dunlap!)
> - Changed Kbuild to Kbuild* (improve matching)
>
>
> scripts/git.orderFile | 34 ++++++++++++++++++++++++++++++++++
> 1 file changed, 34 insertions(+)
> create mode 100644 scripts/git.orderFile
>
> diff --git a/scripts/git.orderFile b/scripts/git.orderFile
> new file mode 100644
> index 000000000000..7cef02cbba3c
> --- /dev/null
> +++ b/scripts/git.orderFile
> @@ -0,0 +1,34 @@
> +# SPDX-License-Identifier: GPL-2.0
> +
> +# 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
> +#
> +
> +MAINTAINERS
> +
> +# Documentation
> +Documentation/*
> +*.rst
> +
> +# build system
> +*Kconfig*
> +*Kbuild*
> +*Makefile*
> +*.mak
> +*.mk
> +
> +# semantic patches
> +*.cocci
> +
> +# headers
> +*types.h
> +*.h
> +
> +# code
> +*.c
> --
> 2.42.0
>