Olga Telezhnaya <olyatelezhn...@gmail.com> writes: > builtin/notes.c | 2 +- > builtin/reset.c | 2 +- > builtin/show-branch.c | 2 +- > commit.h | 81 +---------------------------------------------- > pretty.h | 87 > +++++++++++++++++++++++++++++++++++++++++++++++++++ > revision.h | 2 +- > 6 files changed, 92 insertions(+), 84 deletions(-) > create mode 100644 pretty.h > > diff --git a/builtin/notes.c b/builtin/notes.c > index 1a2c7d92ad7e7..7c8176164561b 100644 > --- a/builtin/notes.c > +++ b/builtin/notes.c > @@ -12,7 +12,7 @@ > #include "builtin.h" > #include "notes.h" > #include "blob.h" > -#include "commit.h" > +#include "pretty.h" > #include "refs.h" > #include "exec_cmd.h" > #include "run-command.h" > ... > diff --git a/commit.h b/commit.h > index 99a3fea68d3f6..8c68ca1a5a187 100644 > --- a/commit.h > +++ b/commit.h > @@ -7,6 +7,7 @@ > #include "decorate.h" > #include "gpg-interface.h" > #include "string-list.h" > +#include "pretty.h"
This is much nicer than what I imagined, which was to just add this line here, move decls from commit.h to pretty.h, and do nothing else, which would be the absolute safest thing from the point of view of other topics in flight. Separation of "pretty.h" would stay to be an implementation detail of the "commit.h" file, where everybody expects to find these decls. Instead, this patch inspects each and every .c user of "commit.h" and replaces its '#include' with the new one if it only uses things declared in "pretty.h", which makes it very clear who have been depending on what in the patch. Those that include "commit.h" because they need both the "what is a commit object" aspect and "how to pretty print" aspect can keep using their original '#include' to ease the transition. Let's see how well this plays with other topics in flight---I had to apply an evil merge to queue the previous one, if I recall right, as a user of "commit.h" that did not use pretty-print (hence did not get "pretty.h" with the previous round of this patch) gained use of pretty-print function, or something like that. Will queue. Thanks.