Skip to content

Commit d1cbe1e

Browse files
newrengitster
authored andcommitted
hash-ll.h: split out of hash.h to remove dependency on repository.h
hash.h depends upon and includes repository.h, due to the definition and use of the_hash_algo (defined as the_repository->hash_algo). However, most headers trying to include hash.h are only interested in the layout of the structs like object_id. Move the parts of hash.h that do not depend upon repository.h into a new file hash-ll.h (the "low level" parts of hash.h), and adjust other files to use this new header where the convenience inline functions aren't needed. This allows hash.h and object.h to be fairly small, minimal headers. It also exposes a lot of hidden dependencies on both path.h (which was brought in by repository.h) and repository.h (which was previously implicitly brought in by object.h), so also adjust other files to be more explicit about what they depend upon. Signed-off-by: Elijah Newren <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 23a517e commit d1cbe1e

File tree

109 files changed

+398
-292
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

109 files changed

+398
-292
lines changed

Diff for: alloc.c

+1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
#include "blob.h"
1414
#include "tree.h"
1515
#include "commit.h"
16+
#include "repository.h"
1617
#include "tag.h"
1718
#include "alloc.h"
1819

Diff for: apply.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#ifndef APPLY_H
22
#define APPLY_H
33

4-
#include "hash.h"
4+
#include "hash-ll.h"
55
#include "lockfile.h"
66
#include "string-list.h"
77
#include "strmap.h"

Diff for: branch.c

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include "refs.h"
1010
#include "refspec.h"
1111
#include "remote.h"
12+
#include "repository.h"
1213
#include "sequencer.h"
1314
#include "commit.h"
1415
#include "worktree.h"

Diff for: builtin/apply.c

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
#include "builtin.h"
33
#include "gettext.h"
44
#include "parse-options.h"
5+
#include "repository.h"
56
#include "apply.h"
67

78
static const char * const apply_usage[] = {

Diff for: builtin/archive.c

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include "transport.h"
1010
#include "parse-options.h"
1111
#include "pkt-line.h"
12+
#include "repository.h"
1213
#include "sideband.h"
1314

1415
static void create_output_file(const char *output_file)

Diff for: builtin/bundle.c

+1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
#include "strvec.h"
66
#include "parse-options.h"
77
#include "pkt-line.h"
8+
#include "repository.h"
89
#include "cache.h"
910
#include "bundle.h"
1011

Diff for: builtin/check-attr.c

+1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
#include "gettext.h"
88
#include "object-name.h"
99
#include "quote.h"
10+
#include "repository.h"
1011
#include "setup.h"
1112
#include "parse-options.h"
1213
#include "write-or-die.h"

Diff for: builtin/check-ignore.c

+1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
#include "quote.h"
88
#include "pathspec.h"
99
#include "parse-options.h"
10+
#include "repository.h"
1011
#include "submodule.h"
1112
#include "write-or-die.h"
1213

Diff for: builtin/checkout-index.c

+1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
#include "gettext.h"
1212
#include "lockfile.h"
1313
#include "quote.h"
14+
#include "repository.h"
1415
#include "cache-tree.h"
1516
#include "parse-options.h"
1617
#include "entry.h"

Diff for: builtin/clean.c

+1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
#include "dir.h"
1515
#include "gettext.h"
1616
#include "parse-options.h"
17+
#include "repository.h"
1718
#include "setup.h"
1819
#include "string-list.h"
1920
#include "quote.h"

Diff for: builtin/config.c

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include "ident.h"
1010
#include "parse-options.h"
1111
#include "urlmatch.h"
12+
#include "path.h"
1213
#include "quote.h"
1314
#include "setup.h"
1415
#include "worktree.h"

Diff for: builtin/credential-cache.c

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#include "builtin.h"
22
#include "gettext.h"
33
#include "parse-options.h"
4+
#include "path.h"
45
#include "wrapper.h"
56
#include "write-or-die.h"
67

Diff for: builtin/credential-store.c

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
#include "gettext.h"
44
#include "lockfile.h"
55
#include "credential.h"
6+
#include "path.h"
67
#include "string-list.h"
78
#include "parse-options.h"
89
#include "write-or-die.h"

Diff for: builtin/for-each-repo.c

+2
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
#include "builtin.h"
44
#include "gettext.h"
55
#include "parse-options.h"
6+
#include "path.h"
7+
#include "repository.h"
68
#include "run-command.h"
79
#include "string-list.h"
810

Diff for: builtin/help.c

+1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
#include "gettext.h"
99
#include "pager.h"
1010
#include "parse-options.h"
11+
#include "path.h"
1112
#include "run-command.h"
1213
#include "config-list.h"
1314
#include "help.h"

Diff for: builtin/init-db.c

+1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
#include "exec-cmd.h"
1515
#include "object-file.h"
1616
#include "parse-options.h"
17+
#include "path.h"
1718
#include "setup.h"
1819
#include "worktree.h"
1920
#include "wrapper.h"

Diff for: builtin/merge-index.c

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#define USE_THE_INDEX_VARIABLE
22
#include "builtin.h"
33
#include "hex.h"
4+
#include "repository.h"
45
#include "run-command.h"
56

67
static const char *pgm;

Diff for: builtin/merge-recursive.c

+2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,11 @@
33
#include "advice.h"
44
#include "commit.h"
55
#include "gettext.h"
6+
#include "hash.h"
67
#include "tag.h"
78
#include "merge-recursive.h"
89
#include "object-name.h"
10+
#include "repository.h"
911
#include "xdiff-interface.h"
1012

1113
static const char builtin_merge_recursive_usage[] =

Diff for: builtin/mv.c

+1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
#include "cache-tree.h"
1919
#include "string-list.h"
2020
#include "parse-options.h"
21+
#include "repository.h"
2122
#include "setup.h"
2223
#include "submodule.h"
2324
#include "entry.h"

Diff for: builtin/push.c

+1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
#include "transport.h"
1616
#include "parse-options.h"
1717
#include "pkt-line.h"
18+
#include "repository.h"
1819
#include "submodule.h"
1920
#include "submodule-config.h"
2021
#include "send-pack.h"

Diff for: builtin/read-tree.c

+1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
#include "dir.h"
2020
#include "builtin.h"
2121
#include "parse-options.h"
22+
#include "repository.h"
2223
#include "resolve-undo.h"
2324
#include "setup.h"
2425
#include "submodule.h"

Diff for: builtin/rerere.c

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
#include "dir.h"
55
#include "gettext.h"
66
#include "parse-options.h"
7+
#include "repository.h"
78
#include "string-list.h"
89
#include "rerere.h"
910
#include "wrapper.h"

Diff for: builtin/rm.c

+2
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,11 @@
1212
#include "dir.h"
1313
#include "cache-tree.h"
1414
#include "gettext.h"
15+
#include "hash.h"
1516
#include "tree-walk.h"
1617
#include "object-name.h"
1718
#include "parse-options.h"
19+
#include "repository.h"
1820
#include "string-list.h"
1921
#include "setup.h"
2022
#include "submodule.h"

Diff for: builtin/show-branch.c

+2
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
#include "config.h"
33
#include "environment.h"
44
#include "gettext.h"
5+
#include "hash.h"
56
#include "hex.h"
67
#include "pretty.h"
78
#include "refs.h"
@@ -10,6 +11,7 @@
1011
#include "strvec.h"
1112
#include "object-name.h"
1213
#include "parse-options.h"
14+
#include "repository.h"
1315
#include "dir.h"
1416
#include "commit-slab.h"
1517
#include "date.h"

Diff for: builtin/show-index.c

+2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
#include "builtin.h"
22
#include "cache.h"
33
#include "gettext.h"
4+
#include "hash.h"
45
#include "hex.h"
56
#include "pack.h"
67
#include "parse-options.h"
8+
#include "repository.h"
79

810
static const char *const show_index_usage[] = {
911
"git show-index [--object-format=<hash-algorithm>]",

Diff for: builtin/update-index.c

+2
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include "config.h"
1010
#include "environment.h"
1111
#include "gettext.h"
12+
#include "hash.h"
1213
#include "hex.h"
1314
#include "lockfile.h"
1415
#include "quote.h"
@@ -21,6 +22,7 @@
2122
#include "parse-options.h"
2223
#include "pathspec.h"
2324
#include "dir.h"
25+
#include "repository.h"
2426
#include "setup.h"
2527
#include "split-index.h"
2628
#include "symlinks.h"

Diff for: builtin/update-ref.c

+2
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
#include "cache.h"
22
#include "config.h"
33
#include "gettext.h"
4+
#include "hash.h"
45
#include "refs.h"
56
#include "builtin.h"
67
#include "object-name.h"
78
#include "parse-options.h"
89
#include "quote.h"
10+
#include "repository.h"
911
#include "strvec.h"
1012

1113
static const char * const git_update_ref_usage[] = {

Diff for: builtin/upload-archive.c

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
#include "archive.h"
77
#include "pkt-line.h"
88
#include "sideband.h"
9+
#include "repository.h"
910
#include "run-command.h"
1011
#include "strvec.h"
1112

Diff for: builtin/worktree.c

+1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
#include "strvec.h"
1515
#include "branch.h"
1616
#include "refs.h"
17+
#include "repository.h"
1718
#include "run-command.h"
1819
#include "hook.h"
1920
#include "sigchain.h"

Diff for: checkout.c

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
#include "object-name.h"
33
#include "remote.h"
44
#include "refspec.h"
5+
#include "repository.h"
56
#include "checkout.h"
67
#include "config.h"
78
#include "strbuf.h"

Diff for: checkout.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#ifndef CHECKOUT_H
22
#define CHECKOUT_H
33

4-
#include "hash.h"
4+
#include "hash-ll.h"
55

66
/*
77
* Check if the branch name uniquely matches a branch name on a remote

Diff for: chunk-format.c

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
#include "chunk-format.h"
44
#include "csum-file.h"
55
#include "gettext.h"
6+
#include "hash.h"
67
#include "trace2.h"
78

89
/*

Diff for: chunk-format.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#ifndef CHUNK_FORMAT_H
22
#define CHUNK_FORMAT_H
33

4-
#include "hash.h"
4+
#include "hash-ll.h"
55

66
struct hashfile;
77
struct chunkfile;

Diff for: common-main.c

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
#include "exec-cmd.h"
33
#include "gettext.h"
44
#include "attr.h"
5+
#include "repository.h"
56
#include "setup.h"
67
#include "strbuf.h"
78
#include "trace2.h"

Diff for: compat/fsmonitor/fsm-ipc-darwin.c

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#include "cache.h"
22
#include "config.h"
33
#include "hex.h"
4+
#include "repository.h"
45
#include "strbuf.h"
56
#include "fsmonitor.h"
67
#include "fsmonitor-ipc.h"

Diff for: compat/fsmonitor/fsm-ipc-win32.c

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#include "git-compat-util.h"
22
#include "config.h"
33
#include "fsmonitor-ipc.h"
4+
#include "path.h"
45

56
const char *fsmonitor_ipc__get_path(struct repository *r) {
67
static char *ret;

Diff for: compat/precompose_utf8.c

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include "config.h"
1010
#include "environment.h"
1111
#include "gettext.h"
12+
#include "path.h"
1213
#include "utf8.h"
1314
#include "precompose_utf8.h"
1415

Diff for: compat/win32/trace2_win32_process_info.c

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
#include "../../cache.h"
22
#include "../../json-writer.h"
3+
#include "../../repository.h"
34
#include "../../trace2.h"
45
#include "lazyload.h"
56
#include <Psapi.h>

Diff for: convert.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
#ifndef CONVERT_H
55
#define CONVERT_H
66

7-
#include "hash.h"
7+
#include "hash-ll.h"
88
#include "string-list.h"
99

1010
struct index_state;

Diff for: copy.c

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
#include "cache.h"
22
#include "copy.h"
3+
#include "path.h"
34
#include "wrapper.h"
45

56
int copy_fd(int ifd, int ofd)

Diff for: csum-file.c

+1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
#include "git-compat-util.h"
1111
#include "progress.h"
1212
#include "csum-file.h"
13+
#include "hash.h"
1314
#include "wrapper.h"
1415

1516
static void verify_buffer_or_die(struct hashfile *f,

Diff for: csum-file.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#ifndef CSUM_FILE_H
22
#define CSUM_FILE_H
33

4-
#include "hash.h"
4+
#include "hash-ll.h"
55
#include "write-or-die.h"
66

77
struct progress;

Diff for: daemon.c

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
#include "alloc.h"
44
#include "config.h"
55
#include "environment.h"
6+
#include "path.h"
67
#include "pkt-line.h"
78
#include "protocol.h"
89
#include "run-command.h"

Diff for: diffcore.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
#ifndef DIFFCORE_H
55
#define DIFFCORE_H
66

7-
#include "hash.h"
7+
#include "hash-ll.h"
88

99
struct diff_options;
1010
struct mem_pool;

Diff for: editor.c

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
#include "environment.h"
77
#include "gettext.h"
88
#include "pager.h"
9+
#include "path.h"
910
#include "strbuf.h"
1011
#include "strvec.h"
1112
#include "run-command.h"

0 commit comments

Comments
 (0)