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 <new...@gmail.com>
> ---
>  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

Reply via email to