On 11/08/18 21:50, Elijah Newren wrote:
> 'branch_track' feels more closely related to branching, and it is
> needed later in branch.h; rather than #include'ing cache.h in branch.h
> for this small enum, just move the enum and the external declaration
> for git_branch_track to branch.h.
>
> Signed-off-by: Elijah Newren
> ---
> branch.h | 11 +++
> cache.h | 10 --
> config.c | 1 +
> environment.c | 1 +
> 4 files changed, 13 insertions(+), 10 deletions(-)
>
> diff --git a/branch.h b/branch.h
> index 7d9b330eba..5cace4581f 100644
> --- a/branch.h
> +++ b/branch.h
> @@ -3,6 +3,17 @@
>
> struct strbuf;
>
> +enum branch_track {
> + BRANCH_TRACK_UNSPECIFIED = -1,
> + BRANCH_TRACK_NEVER = 0,
> + BRANCH_TRACK_REMOTE,
> + BRANCH_TRACK_ALWAYS,
> + BRANCH_TRACK_EXPLICIT,
> + BRANCH_TRACK_OVERRIDE
> +};
> +
> +extern enum branch_track git_branch_track;
> +
> /* Functions for acting on the information about branches. */
>
> /*
> diff --git a/cache.h b/cache.h
> index 8dc7134f00..a1c0c594fb 100644
> --- a/cache.h
> +++ b/cache.h
> @@ -919,15 +919,6 @@ enum log_refs_config {
> };
> extern enum log_refs_config log_all_ref_updates;
>
> -enum branch_track {
> - BRANCH_TRACK_UNSPECIFIED = -1,
> - BRANCH_TRACK_NEVER = 0,
> - BRANCH_TRACK_REMOTE,
> - BRANCH_TRACK_ALWAYS,
> - BRANCH_TRACK_EXPLICIT,
> - BRANCH_TRACK_OVERRIDE
> -};
> -
> enum rebase_setup_type {
> AUTOREBASE_NEVER = 0,
> AUTOREBASE_LOCAL,
> @@ -944,7 +935,6 @@ enum push_default_type {
> PUSH_DEFAULT_UNSPECIFIED
> };
>
> -extern enum branch_track git_branch_track;
> extern enum rebase_setup_type autorebase;
> extern enum push_default_type push_default;
>
> diff --git a/config.c b/config.c
> index 66645047eb..b60d7c0308 100644
> --- a/config.c
> +++ b/config.c
> @@ -5,6 +5,7 @@
> * Copyright (C) Johannes Schindelin, 2005
> *
> */
> +#include "branch.h"
git-compat-util.h, cache.h or builtin.h _must_ be the first
header file #included in a C file, so this new #include of
the "branch.h" header should be moved ...
> #include "cache.h"
... after here.
> #include "config.h"
> #include "repository.h"
> diff --git a/environment.c b/environment.c
> index 6cf0079389..920362900c 100644
> --- a/environment.c
> +++ b/environment.c
> @@ -7,6 +7,7 @@
> * even if you might want to know where the git directory etc
> * are.
> */
> +#include "branch.h"
ditto
> #include "cache.h"
> #include "repository.h"
> #include "config.h"
>
ATB,
Ramsay Jones