environment.h: move declarations for environment.c functions from cache.h
Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Elijah Newren committed
Mar 21, 2023 at 06:26 UTC
32a8f510614312cc8b81bbc6a982d08ab7562ab4
119 files changed
+330
-207
apply.c
+1
index 373565a7ba..a7c0bccb15 100644
--- a/apply.c
+++ b/apply.c
@@ -16,6 +16,7 @@
#include "delta.h"
#include "diff.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "xdiff-interface.h"
archive.c
+1
index c3c45a5ebe..7aeaaf368f 100644
--- a/archive.c
+++ b/archive.c
@@ -2,6 +2,7 @@
#include "abspath.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "refs.h"
attr.c
+1
index 48e2d64618..62127196cb 100644
--- a/attr.c
+++ b/attr.c
@@ -9,6 +9,7 @@
#include "cache.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "exec-cmd.h"
#include "attr.h"
#include "dir.h"
bisect.c
+1
index 5a3a8182d8..8a4be05dc5 100644
--- a/bisect.c
+++ b/bisect.c
@@ -2,6 +2,7 @@
#include "config.h"
#include "commit.h"
#include "diff.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "revision.h"
branch.c
+1
index 66d32c6856..3865bdbc87 100644
--- a/branch.c
+++ b/branch.c
@@ -2,6 +2,7 @@
#include "cache.h"
#include "config.h"
#include "branch.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "refs.h"
builtin/am.c
+1
index 37f82b3eb4..192968ac30 100644
--- a/builtin/am.c
+++ b/builtin/am.c
@@ -8,6 +8,7 @@
#include "abspath.h"
#include "config.h"
#include "builtin.h"
+#include "environment.h"
#include "exec-cmd.h"
#include "gettext.h"
#include "hex.h"
builtin/bisect.c
+1
index 31cc57e45b..d8e92dfa16 100644
--- a/builtin/bisect.c
+++ b/builtin/bisect.c
@@ -1,5 +1,6 @@
#include "builtin.h"
#include "cache.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "parse-options.h"
builtin/blame.c
+1
index 21f6b523a6..9ec82edcbd 100644
--- a/builtin/blame.c
+++ b/builtin/blame.c
@@ -10,6 +10,7 @@
#include "config.h"
#include "color.h"
#include "builtin.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "repository.h"
builtin/cat-file.c
+1
index 9f1bf8f0e9..365d9234bd 100644
--- a/builtin/cat-file.c
+++ b/builtin/cat-file.c
@@ -9,6 +9,7 @@
#include "config.h"
#include "builtin.h"
#include "diff.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "ident.h"
builtin/check-attr.c
+1
index ad27255e2c..5870c4683a 100644
--- a/builtin/check-attr.c
+++ b/builtin/check-attr.c
@@ -3,6 +3,7 @@
#include "cache.h"
#include "config.h"
#include "attr.h"
+#include "environment.h"
#include "gettext.h"
#include "quote.h"
#include "parse-options.h"
builtin/checkout.c
+1
index 47d4c369a1..5541e76c33 100644
--- a/builtin/checkout.c
+++ b/builtin/checkout.c
@@ -9,6 +9,7 @@
#include "config.h"
#include "diff.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "hook.h"
builtin/clone.c
+1
index b94324ea02..15dc15408e 100644
--- a/builtin/clone.c
+++ b/builtin/clone.c
@@ -12,6 +12,7 @@
#include "builtin.h"
#include "abspath.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "lockfile.h"
builtin/commit-graph.c
+1
index 311e010681..9011426976 100644
--- a/builtin/commit-graph.c
+++ b/builtin/commit-graph.c
@@ -1,6 +1,7 @@
#include "builtin.h"
#include "config.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "lockfile.h"
builtin/config.c
+1
index 1c1e006ff3..cf994a216c 100644
--- a/builtin/config.c
+++ b/builtin/config.c
@@ -3,6 +3,7 @@
#include "alloc.h"
#include "config.h"
#include "color.h"
+#include "environment.h"
#include "gettext.h"
#include "ident.h"
#include "parse-options.h"
builtin/count-objects.c
+1
index 48edc86c24..f3d8f1bcbb 100644
--- a/builtin/count-objects.c
+++ b/builtin/count-objects.c
@@ -7,6 +7,7 @@
#include "cache.h"
#include "config.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "repository.h"
#include "builtin.h"
builtin/describe.c
+1
index fcacdf8a69..27c6670e93 100644
--- a/builtin/describe.c
+++ b/builtin/describe.c
@@ -1,6 +1,7 @@
#define USE_THE_INDEX_VARIABLE
#include "cache.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "lockfile.h"
builtin/difftool.c
+1
index 59465c39f1..3613de6389 100644
--- a/builtin/difftool.c
+++ b/builtin/difftool.c
@@ -17,6 +17,7 @@
#include "config.h"
#include "builtin.h"
#include "run-command.h"
+#include "environment.h"
#include "exec-cmd.h"
#include "gettext.h"
#include "hex.h"
builtin/fast-import.c
+1
index 3300b7f30f..068843a5d2 100644
--- a/builtin/fast-import.c
+++ b/builtin/fast-import.c
@@ -1,6 +1,7 @@
#include "builtin.h"
#include "abspath.h"
#include "cache.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "repository.h"
builtin/fetch.c
+1
index 990f81f6d1..4d883da02e 100644
--- a/builtin/fetch.c
+++ b/builtin/fetch.c
@@ -4,6 +4,7 @@
#include "cache.h"
#include "config.h"
#include "gettext.h"
+#include "environment.h"
#include "hex.h"
#include "repository.h"
#include "refs.h"
builtin/fsmonitor--daemon.c
+1
index 4efb141734..a280d8bb14 100644
--- a/builtin/fsmonitor--daemon.c
+++ b/builtin/fsmonitor--daemon.c
@@ -2,6 +2,7 @@
#include "abspath.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "parse-options.h"
#include "fsmonitor.h"
builtin/gc.c
+1
index 2107e3d1f2..525c5de5b2 100644
--- a/builtin/gc.c
+++ b/builtin/gc.c
@@ -12,6 +12,7 @@
#include "builtin.h"
#include "abspath.h"
+#include "environment.h"
#include "hex.h"
#include "repository.h"
#include "config.h"
builtin/index-pack.c
+1
index 2393897cb8..fdce8f8872 100644
--- a/builtin/index-pack.c
+++ b/builtin/index-pack.c
@@ -2,6 +2,7 @@
#include "alloc.h"
#include "config.h"
#include "delta.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "pack.h"
builtin/init-db.c
+1
index a5d4f5c8ec..2ebc9023f5 100644
--- a/builtin/init-db.c
+++ b/builtin/init-db.c
@@ -6,6 +6,7 @@
#include "cache.h"
#include "abspath.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "refs.h"
#include "builtin.h"
builtin/log.c
+1
index b7333b34cc..1b92dee196 100644
--- a/builtin/log.c
+++ b/builtin/log.c
@@ -8,6 +8,7 @@
#include "abspath.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "refs.h"
builtin/mailinfo.c
+1
index e14f7c0abc..a032a1c388 100644
--- a/builtin/mailinfo.c
+++ b/builtin/mailinfo.c
@@ -5,6 +5,7 @@
#include "cache.h"
#include "abspath.h"
#include "builtin.h"
+#include "environment.h"
#include "gettext.h"
#include "utf8.h"
#include "strbuf.h"
builtin/multi-pack-index.c
+1
index 579bc2cac0..1b5083f8b2 100644
--- a/builtin/multi-pack-index.c
+++ b/builtin/multi-pack-index.c
@@ -2,6 +2,7 @@
#include "abspath.h"
#include "cache.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "parse-options.h"
#include "midx.h"
builtin/mv.c
+1
index 0a49bf21b0..c2dd42efbf 100644
--- a/builtin/mv.c
+++ b/builtin/mv.c
@@ -8,6 +8,7 @@
#include "abspath.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "pathspec.h"
#include "lockfile.h"
builtin/name-rev.c
+1
index 6977a5f580..66f82ef66f 100644
--- a/builtin/name-rev.c
+++ b/builtin/name-rev.c
@@ -1,5 +1,6 @@
#include "builtin.h"
#include "alloc.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "repository.h"
builtin/pack-objects.c
+1
index 8b55a088a7..9829b952c2 100644
--- a/builtin/pack-objects.c
+++ b/builtin/pack-objects.c
@@ -1,5 +1,6 @@
#include "builtin.h"
#include "alloc.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "repository.h"
builtin/prune.c
+1
index ff62a0adb8..5a381fcdf9 100644
--- a/builtin/prune.c
+++ b/builtin/prune.c
@@ -1,6 +1,7 @@
#include "cache.h"
#include "commit.h"
#include "diff.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "revision.h"
builtin/push.c
+1
index 2d76fa6837..fa550b8f80 100644
--- a/builtin/push.c
+++ b/builtin/push.c
@@ -4,6 +4,7 @@
#include "cache.h"
#include "branch.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "refs.h"
#include "refspec.h"
builtin/rebase.c
+1
index d2f8f703d6..9f3135116e 100644
--- a/builtin/rebase.c
+++ b/builtin/rebase.c
@@ -7,6 +7,7 @@
#define USE_THE_INDEX_VARIABLE
#include "builtin.h"
#include "abspath.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "run-command.h"
builtin/receive-pack.c
+1
index ae49ea8c2a..3745c0b95c 100644
--- a/builtin/receive-pack.c
+++ b/builtin/receive-pack.c
@@ -2,6 +2,7 @@
#include "abspath.h"
#include "repository.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "lockfile.h"
builtin/repack.c
+1
index 771ca01527..ccbd5f5556 100644
--- a/builtin/repack.c
+++ b/builtin/repack.c
@@ -2,6 +2,7 @@
#include "alloc.h"
#include "config.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "parse-options.h"
builtin/replace.c
+1
index cf85e590d9..dc0331defc 100644
--- a/builtin/replace.c
+++ b/builtin/replace.c
@@ -11,6 +11,7 @@
#include "cache.h"
#include "config.h"
#include "builtin.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "refs.h"
builtin/reset.c
+1
index 4335c1a6e1..b5dfce1159 100644
--- a/builtin/reset.c
+++ b/builtin/reset.c
@@ -10,6 +10,7 @@
#define USE_THE_INDEX_VARIABLE
#include "builtin.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "lockfile.h"
builtin/rev-list.c
+1
index f2f6a0d3e6..b202647f28 100644
--- a/builtin/rev-list.c
+++ b/builtin/rev-list.c
@@ -2,6 +2,7 @@
#include "config.h"
#include "commit.h"
#include "diff.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "revision.h"
builtin/rev-parse.c
+1
index a4c0878bc9..bba49d56b9 100644
--- a/builtin/rev-parse.c
+++ b/builtin/rev-parse.c
@@ -9,6 +9,7 @@
#include "alloc.h"
#include "config.h"
#include "commit.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "refs.h"
builtin/shortlog.c
+1
index d8c4379ea1..31f81c25ea 100644
--- a/builtin/shortlog.c
+++ b/builtin/shortlog.c
@@ -3,6 +3,7 @@
#include "config.h"
#include "commit.h"
#include "diff.h"
+#include "environment.h"
#include "gettext.h"
#include "string-list.h"
#include "revision.h"
builtin/show-branch.c
+1
index 8d56962972..c4aa0e62f2 100644
--- a/builtin/show-branch.c
+++ b/builtin/show-branch.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "pretty.h"
builtin/sparse-checkout.c
+1
index 3976d8e86b..f6a120c7c4 100644
--- a/builtin/sparse-checkout.c
+++ b/builtin/sparse-checkout.c
@@ -2,6 +2,7 @@
#include "cache.h"
#include "config.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "parse-options.h"
#include "pathspec.h"
builtin/stash.c
+1
index 52fa892f7e..94f81d75d0 100644
--- a/builtin/stash.c
+++ b/builtin/stash.c
@@ -2,6 +2,7 @@
#include "builtin.h"
#include "abspath.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "parse-options.h"
builtin/submodule--helper.c
+1
index ff1fd8c87a..2bf2a1a8be 100644
--- a/builtin/submodule--helper.c
+++ b/builtin/submodule--helper.c
@@ -2,6 +2,7 @@
#include "builtin.h"
#include "abspath.h"
#include "alloc.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "repository.h"
builtin/unpack-objects.c
+1
index f7c4b53107..c65ae3b207 100644
--- a/builtin/unpack-objects.c
+++ b/builtin/unpack-objects.c
@@ -2,6 +2,7 @@
#include "cache.h"
#include "bulk-checkin.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "object-store.h"
builtin/update-index.c
+1
index ef78b2d28e..4642afaeb7 100644
--- a/builtin/update-index.c
+++ b/builtin/update-index.c
@@ -7,6 +7,7 @@
#include "cache.h"
#include "bulk-checkin.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "lockfile.h"
builtin/worktree.c
+1
index 1533b4ab43..d9345efdb2 100644
--- a/builtin/worktree.c
+++ b/builtin/worktree.c
@@ -4,6 +4,7 @@
#include "config.h"
#include "builtin.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "parse-options.h"
builtin/write-tree.c
+1
index 7eec4e3cbd..6085f64d10 100644
--- a/builtin/write-tree.c
+++ b/builtin/write-tree.c
@@ -7,6 +7,7 @@
#include "builtin.h"
#include "cache.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "tree.h"
bulk-checkin.c
+1
index 778ca1e0f4..eb6d7a2805 100644
--- a/bulk-checkin.c
+++ b/bulk-checkin.c
@@ -4,6 +4,7 @@
#include "git-compat-util.h"
#include "alloc.h"
#include "bulk-checkin.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "lockfile.h"
bundle-uri.c
+1
index 2cc7d159bd..1ff1cf51da 100644
--- a/bundle-uri.c
+++ b/bundle-uri.c
@@ -1,6 +1,7 @@
#include "cache.h"
#include "bundle-uri.h"
#include "bundle.h"
+#include "environment.h"
#include "gettext.h"
#include "object-store.h"
#include "refs.h"
bundle.c
+1
index f5b3643b17..efeaf6f715 100644
--- a/bundle.c
+++ b/bundle.c
@@ -1,6 +1,7 @@
#include "cache.h"
#include "lockfile.h"
#include "bundle.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "object-store.h"
cache-tree.c
+1
index 6f899beb04..231c3eb2ff 100644
--- a/cache-tree.c
+++ b/cache-tree.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "alloc.h"
+#include "environment.h"
#include "hex.h"
#include "lockfile.h"
#include "tree.h"
cache.h
-207
index 31c722533f..720c88f9fd 100644
--- a/cache.h
+++ b/cache.h
@@ -452,98 +452,10 @@ static inline enum object_type object_type(unsigned int mode)
OBJ_BLOB;
}
-/* Double-check local_repo_env below if you add to this list. */
-#define GIT_DIR_ENVIRONMENT "GIT_DIR"
-#define GIT_COMMON_DIR_ENVIRONMENT "GIT_COMMON_DIR"
-#define GIT_NAMESPACE_ENVIRONMENT "GIT_NAMESPACE"
-#define GIT_WORK_TREE_ENVIRONMENT "GIT_WORK_TREE"
-#define GIT_PREFIX_ENVIRONMENT "GIT_PREFIX"
-#define DEFAULT_GIT_DIR_ENVIRONMENT ".git"
-#define DB_ENVIRONMENT "GIT_OBJECT_DIRECTORY"
-#define INDEX_ENVIRONMENT "GIT_INDEX_FILE"
-#define GRAFT_ENVIRONMENT "GIT_GRAFT_FILE"
-#define GIT_SHALLOW_FILE_ENVIRONMENT "GIT_SHALLOW_FILE"
-#define TEMPLATE_DIR_ENVIRONMENT "GIT_TEMPLATE_DIR"
-#define CONFIG_ENVIRONMENT "GIT_CONFIG"
-#define CONFIG_DATA_ENVIRONMENT "GIT_CONFIG_PARAMETERS"
-#define CONFIG_COUNT_ENVIRONMENT "GIT_CONFIG_COUNT"
-#define EXEC_PATH_ENVIRONMENT "GIT_EXEC_PATH"
-#define CEILING_DIRECTORIES_ENVIRONMENT "GIT_CEILING_DIRECTORIES"
-#define NO_REPLACE_OBJECTS_ENVIRONMENT "GIT_NO_REPLACE_OBJECTS"
-#define GIT_REPLACE_REF_BASE_ENVIRONMENT "GIT_REPLACE_REF_BASE"
-#define GITATTRIBUTES_FILE ".gitattributes"
-#define INFOATTRIBUTES_FILE "info/attributes"
-#define ATTRIBUTE_MACRO_PREFIX "[attr]"
-#define GITMODULES_FILE ".gitmodules"
-#define GITMODULES_INDEX ":.gitmodules"
-#define GITMODULES_HEAD "HEAD:.gitmodules"
-#define GIT_NOTES_REF_ENVIRONMENT "GIT_NOTES_REF"
-#define GIT_NOTES_DEFAULT_REF "refs/notes/commits"
-#define GIT_NOTES_DISPLAY_REF_ENVIRONMENT "GIT_NOTES_DISPLAY_REF"
-#define GIT_NOTES_REWRITE_REF_ENVIRONMENT "GIT_NOTES_REWRITE_REF"
-#define GIT_NOTES_REWRITE_MODE_ENVIRONMENT "GIT_NOTES_REWRITE_MODE"
-#define GIT_LITERAL_PATHSPECS_ENVIRONMENT "GIT_LITERAL_PATHSPECS"
-#define GIT_GLOB_PATHSPECS_ENVIRONMENT "GIT_GLOB_PATHSPECS"
-#define GIT_NOGLOB_PATHSPECS_ENVIRONMENT "GIT_NOGLOB_PATHSPECS"
-#define GIT_ICASE_PATHSPECS_ENVIRONMENT "GIT_ICASE_PATHSPECS"
-#define GIT_QUARANTINE_ENVIRONMENT "GIT_QUARANTINE_PATH"
-#define GIT_OPTIONAL_LOCKS_ENVIRONMENT "GIT_OPTIONAL_LOCKS"
-#define GIT_TEXT_DOMAIN_DIR_ENVIRONMENT "GIT_TEXTDOMAINDIR"
-
-/*
- * Environment variable used in handshaking the wire protocol.
- * Contains a colon ':' separated list of keys with optional values
- * 'key[=value]'. Presence of unknown keys and values must be
- * ignored.
- */
-#define GIT_PROTOCOL_ENVIRONMENT "GIT_PROTOCOL"
-/* HTTP header used to handshake the wire protocol */
-#define GIT_PROTOCOL_HEADER "Git-Protocol"
-
-/*
- * This environment variable is expected to contain a boolean indicating
- * whether we should or should not treat:
- *
- * GIT_DIR=foo.git git ...
- *
- * as if GIT_WORK_TREE=. was given. It's not expected that users will make use
- * of this, but we use it internally to communicate to sub-processes that we
- * are in a bare repo. If not set, defaults to true.
- */
-#define GIT_IMPLICIT_WORK_TREE_ENVIRONMENT "GIT_IMPLICIT_WORK_TREE"
-
-/*
- * Repository-local GIT_* environment variables; these will be cleared
- * when git spawns a sub-process that runs inside another repository.
- * The array is NULL-terminated, which makes it easy to pass in the "env"
- * parameter of a run-command invocation, or to do a simple walk.
- */
-extern const char * const local_repo_env[];
-
-void setup_git_env(const char *git_dir);
-
-/*
- * Returns true iff we have a configured git repository (either via
- * setup_git_directory, or in the environment via $GIT_DIR).
- */
-int have_git_dir(void);
-
-extern int is_bare_repository_cfg;
-int is_bare_repository(void);
int is_inside_git_dir(void);
-extern char *git_work_tree_cfg;
int is_inside_work_tree(void);
-const char *get_git_dir(void);
-const char *get_git_common_dir(void);
-const char *get_object_directory(void);
-char *get_index_file(void);
-char *get_graft_file(struct repository *r);
-void set_git_dir(const char *path, int make_realpath);
int get_common_dir_noenv(struct strbuf *sb, const char *gitdir);
int get_common_dir(struct strbuf *sb, const char *gitdir);
-const char *get_git_namespace(void);
-const char *strip_namespace(const char *namespaced_ref);
-const char *get_git_work_tree(void);
/*
* Return true if the given path is a git directory; note that this _just_
@@ -578,10 +490,6 @@ const char *read_gitfile_gently(const char *path, int *return_error_code);
const char *resolve_gitdir_gently(const char *suspect, int *return_error_code);
#define resolve_gitdir(path) resolve_gitdir_gently((path), NULL)
-void set_git_work_tree(const char *tree);
-
-#define ALTERNATE_DB_ENVIRONMENT "GIT_ALTERNATE_OBJECT_DIRECTORIES"
-
void setup_work_tree(void);
/*
* Find the commondir and gitdir of the repository that contains the current
@@ -840,39 +748,7 @@ void set_alternate_index_output(const char *);
extern int verify_index_checksum;
extern int verify_ce_order;
-/* Environment bits from configuration mechanism */
-extern int trust_executable_bit;
-extern int trust_ctime;
-extern int check_stat;
extern int quote_path_fully;
-extern int has_symlinks;
-extern int minimum_abbrev, default_abbrev;
-extern int ignore_case;
-extern int assume_unchanged;
-extern int prefer_symlink_refs;
-extern int warn_ambiguous_refs;
-extern int warn_on_object_refname_ambiguity;
-extern char *apply_default_whitespace;
-extern char *apply_default_ignorewhitespace;
-extern const char *git_attributes_file;
-extern const char *git_hooks_path;
-extern int zlib_compression_level;
-extern int pack_compression_level;
-extern size_t packed_git_window_size;
-extern size_t packed_git_limit;
-extern size_t delta_base_cache_limit;
-extern unsigned long big_file_threshold;
-extern unsigned long pack_size_limit_cfg;
-
-/*
- * Accessors for the core.sharedrepository config which lazy-load the value
- * from the config (if not already set). The "reset" function can be
- * used to unset "set" or cached value, meaning that the value will be loaded
- * fresh from the config file on the next call to get_shared_repository().
- */
-void set_shared_repository(int value);
-int get_shared_repository(void);
-void reset_shared_repository(void);
/*
* These values are used to help identify parts of a repository to fsync.
@@ -930,57 +806,6 @@ enum fsync_method {
};
extern enum fsync_method fsync_method;
-extern int core_preload_index;
-extern int precomposed_unicode;
-extern int protect_hfs;
-extern int protect_ntfs;
-
-extern int core_apply_sparse_checkout;
-extern int core_sparse_checkout_cone;
-extern int sparse_expect_files_outside_of_patterns;
-
-/*
- * Returns the boolean value of $GIT_OPTIONAL_LOCKS (or the default value).
- */
-int use_optional_locks(void);
-
-enum log_refs_config {
- LOG_REFS_UNSET = -1,
- LOG_REFS_NONE = 0,
- LOG_REFS_NORMAL,
- LOG_REFS_ALWAYS
-};
-extern enum log_refs_config log_all_ref_updates;
-
-enum rebase_setup_type {
- AUTOREBASE_NEVER = 0,
- AUTOREBASE_LOCAL,
- AUTOREBASE_REMOTE,
- AUTOREBASE_ALWAYS
-};
-
-enum push_default_type {
- PUSH_DEFAULT_NOTHING = 0,
- PUSH_DEFAULT_MATCHING,
- PUSH_DEFAULT_SIMPLE,
- PUSH_DEFAULT_UPSTREAM,
- PUSH_DEFAULT_CURRENT,
- PUSH_DEFAULT_UNSPECIFIED
-};
-
-extern enum rebase_setup_type autorebase;
-extern enum push_default_type push_default;
-
-enum object_creation_mode {
- OBJECT_CREATION_USES_HARDLINKS = 0,
- OBJECT_CREATION_USES_RENAMES = 1
-};
-
-extern enum object_creation_mode object_creation_mode;
-
-extern char *notes_ref_name;
-
-extern int grafts_replace_parents;
/*
* GIT_REPO_VERSION is the version we write by default. The
@@ -989,8 +814,6 @@ extern int grafts_replace_parents;
*/
#define GIT_REPO_VERSION 0
#define GIT_REPO_VERSION_READ 1
-extern int repository_format_precious_objects;
-extern int repository_format_worktree_config;
/*
* You _have_ to initialize a `struct repository_format` using
@@ -1362,21 +1185,6 @@ struct pack_entry {
struct packed_git *p;
};
-/*
- * Create a temporary file rooted in the object database directory, or
- * die on failure. The filename is taken from "pattern", which should have the
- * usual "XXXXXX" trailer, and the resulting filename is written into the
- * "template" buffer. Returns the open descriptor.
- */
-int odb_mkstemp(struct strbuf *temp_filename, const char *pattern);
-
-/*
- * Create a pack .keep file named "name" (which should generally be the output
- * of odb_pack_name). Returns a file descriptor opened for writing, or -1 on
- * error.
- */
-int odb_pack_keep(const char *name);
-
/*
* Set this to 0 to prevent oid_object_info_extended() from fetching missing
* blobs. This has a difference only if extensions.partialClone is set.
@@ -1388,11 +1196,6 @@ extern int fetch_if_missing;
/* Dumb servers support */
int update_server_info(int);
-const char *get_log_output_encoding(void);
-const char *get_commit_output_encoding(void);
-
-extern const char *git_commit_encoding;
-extern const char *git_log_output_encoding;
extern const char *git_mailmap_file;
extern const char *git_mailmap_blob;
@@ -1429,10 +1232,6 @@ int decimal_width(uintmax_t);
int check_pager_config(const char *cmd);
void prepare_pager_args(struct child_process *, const char *pager);
-extern const char *editor_program;
-extern const char *askpass_program;
-extern const char *excludes_file;
-
/* base85 */
int decode_85(char *dst, const char *line, int linelen);
void encode_85(char *buf, const unsigned char *data, int bytes);
@@ -1536,10 +1335,4 @@ void stat_validity_update(struct stat_validity *sv, int fd);
int versioncmp(const char *s1, const char *s2);
-/*
- * Should we print an ellipsis after an abbreviated SHA-1 value
- * when doing diff-raw output or indicating a detached HEAD?
- */
-int print_sha1_ellipsis(void);
-
#endif /* CACHE_H */
combine-diff.c
+1
index 91051dc325..3758e47c4f 100644
--- a/combine-diff.c
+++ b/combine-diff.c
@@ -4,6 +4,7 @@
#include "blob.h"
#include "diff.h"
#include "diffcore.h"
+#include "environment.h"
#include "hex.h"
#include "quote.h"
#include "xdiff-interface.h"
compat/mingw.c
+1
index d48899bf7b..94c5a1daa4 100644
--- a/compat/mingw.c
+++ b/compat/mingw.c
@@ -11,6 +11,7 @@
#include "../alloc.h"
#include "win32/lazyload.h"
#include "../config.h"
+#include "../environment.h"
#include "../wrapper.h"
#include "dir.h"
#include "gettext.h"
compat/precompose_utf8.c
+1
index 56d36cdf22..8a9881db07 100644
--- a/compat/precompose_utf8.c
+++ b/compat/precompose_utf8.c
@@ -7,6 +7,7 @@
#include "cache.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "utf8.h"
#include "precompose_utf8.h"
connect.c
+1
index f3b159bf44..737dd906f7 100644
--- a/connect.c
+++ b/connect.c
@@ -1,6 +1,7 @@
#include "git-compat-util.h"
#include "cache.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "pkt-line.h"
daemon.c
+1
index e35604e194..b56a8f9717 100644
--- a/daemon.c
+++ b/daemon.c
@@ -2,6 +2,7 @@
#include "abspath.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "pkt-line.h"
#include "run-command.h"
#include "strbuf.h"
diff.c
+1
index 1b0b24c21c..dcf1a94094 100644
--- a/diff.c
+++ b/diff.c
@@ -5,6 +5,7 @@
#include "abspath.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "tempfile.h"
#include "quote.h"
dir.c
+1
index b57c770e68..06f8aa3c01 100644
--- a/dir.c
+++ b/dir.c
@@ -10,6 +10,7 @@
#include "alloc.h"
#include "config.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "object-store.h"
#include "attr.h"
editor.c
+1
index 2d3e6be64e..d632d79066 100644
--- a/editor.c
+++ b/editor.c
@@ -1,6 +1,7 @@
#include "cache.h"
#include "abspath.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "strbuf.h"
#include "strvec.h"
entry.c
+1
index 70212af260..750c1f6b2f 100644
--- a/entry.c
+++ b/entry.c
@@ -2,6 +2,7 @@
#include "blob.h"
#include "object-store.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "streaming.h"
environment.h
+213
index a26931556a..a63f0c6a24 100644
--- a/environment.h
+++ b/environment.h
@@ -3,6 +3,8 @@
#include "strvec.h"
+struct repository;
+
/*
* The character that begins a commented line in user-editable file
* that is subject to stripspace.
@@ -16,4 +18,215 @@ extern int auto_comment_line_char;
*/
const char *getenv_safe(struct strvec *argv, const char *name);
+/* Double-check local_repo_env below if you add to this list. */
+#define GIT_DIR_ENVIRONMENT "GIT_DIR"
+#define GIT_COMMON_DIR_ENVIRONMENT "GIT_COMMON_DIR"
+#define GIT_NAMESPACE_ENVIRONMENT "GIT_NAMESPACE"
+#define GIT_WORK_TREE_ENVIRONMENT "GIT_WORK_TREE"
+#define GIT_PREFIX_ENVIRONMENT "GIT_PREFIX"
+#define DEFAULT_GIT_DIR_ENVIRONMENT ".git"
+#define DB_ENVIRONMENT "GIT_OBJECT_DIRECTORY"
+#define INDEX_ENVIRONMENT "GIT_INDEX_FILE"
+#define GRAFT_ENVIRONMENT "GIT_GRAFT_FILE"
+#define GIT_SHALLOW_FILE_ENVIRONMENT "GIT_SHALLOW_FILE"
+#define TEMPLATE_DIR_ENVIRONMENT "GIT_TEMPLATE_DIR"
+#define CONFIG_ENVIRONMENT "GIT_CONFIG"
+#define CONFIG_DATA_ENVIRONMENT "GIT_CONFIG_PARAMETERS"
+#define CONFIG_COUNT_ENVIRONMENT "GIT_CONFIG_COUNT"
+#define EXEC_PATH_ENVIRONMENT "GIT_EXEC_PATH"
+#define CEILING_DIRECTORIES_ENVIRONMENT "GIT_CEILING_DIRECTORIES"
+#define NO_REPLACE_OBJECTS_ENVIRONMENT "GIT_NO_REPLACE_OBJECTS"
+#define GIT_REPLACE_REF_BASE_ENVIRONMENT "GIT_REPLACE_REF_BASE"
+#define GITATTRIBUTES_FILE ".gitattributes"
+#define INFOATTRIBUTES_FILE "info/attributes"
+#define ATTRIBUTE_MACRO_PREFIX "[attr]"
+#define GITMODULES_FILE ".gitmodules"
+#define GITMODULES_INDEX ":.gitmodules"
+#define GITMODULES_HEAD "HEAD:.gitmodules"
+#define GIT_NOTES_REF_ENVIRONMENT "GIT_NOTES_REF"
+#define GIT_NOTES_DEFAULT_REF "refs/notes/commits"
+#define GIT_NOTES_DISPLAY_REF_ENVIRONMENT "GIT_NOTES_DISPLAY_REF"
+#define GIT_NOTES_REWRITE_REF_ENVIRONMENT "GIT_NOTES_REWRITE_REF"
+#define GIT_NOTES_REWRITE_MODE_ENVIRONMENT "GIT_NOTES_REWRITE_MODE"
+#define GIT_LITERAL_PATHSPECS_ENVIRONMENT "GIT_LITERAL_PATHSPECS"
+#define GIT_GLOB_PATHSPECS_ENVIRONMENT "GIT_GLOB_PATHSPECS"
+#define GIT_NOGLOB_PATHSPECS_ENVIRONMENT "GIT_NOGLOB_PATHSPECS"
+#define GIT_ICASE_PATHSPECS_ENVIRONMENT "GIT_ICASE_PATHSPECS"
+#define GIT_QUARANTINE_ENVIRONMENT "GIT_QUARANTINE_PATH"
+#define GIT_OPTIONAL_LOCKS_ENVIRONMENT "GIT_OPTIONAL_LOCKS"
+#define GIT_TEXT_DOMAIN_DIR_ENVIRONMENT "GIT_TEXTDOMAINDIR"
+
+/*
+ * Environment variable used in handshaking the wire protocol.
+ * Contains a colon ':' separated list of keys with optional values
+ * 'key[=value]'. Presence of unknown keys and values must be
+ * ignored.
+ */
+#define GIT_PROTOCOL_ENVIRONMENT "GIT_PROTOCOL"
+/* HTTP header used to handshake the wire protocol */
+#define GIT_PROTOCOL_HEADER "Git-Protocol"
+
+/*
+ * This environment variable is expected to contain a boolean indicating
+ * whether we should or should not treat:
+ *
+ * GIT_DIR=foo.git git ...
+ *
+ * as if GIT_WORK_TREE=. was given. It's not expected that users will make use
+ * of this, but we use it internally to communicate to sub-processes that we
+ * are in a bare repo. If not set, defaults to true.
+ */
+#define GIT_IMPLICIT_WORK_TREE_ENVIRONMENT "GIT_IMPLICIT_WORK_TREE"
+
+/*
+ * Repository-local GIT_* environment variables; these will be cleared
+ * when git spawns a sub-process that runs inside another repository.
+ * The array is NULL-terminated, which makes it easy to pass in the "env"
+ * parameter of a run-command invocation, or to do a simple walk.
+ */
+extern const char * const local_repo_env[];
+
+void setup_git_env(const char *git_dir);
+
+/*
+ * Returns true iff we have a configured git repository (either via
+ * setup_git_directory, or in the environment via $GIT_DIR).
+ */
+int have_git_dir(void);
+
+extern int is_bare_repository_cfg;
+int is_bare_repository(void);
+extern char *git_work_tree_cfg;
+const char *get_git_dir(void);
+const char *get_git_common_dir(void);
+const char *get_object_directory(void);
+char *get_index_file(void);
+char *get_graft_file(struct repository *r);
+void set_git_dir(const char *path, int make_realpath);
+const char *get_git_namespace(void);
+const char *strip_namespace(const char *namespaced_ref);
+const char *get_git_work_tree(void);
+void set_git_work_tree(const char *tree);
+
+#define ALTERNATE_DB_ENVIRONMENT "GIT_ALTERNATE_OBJECT_DIRECTORIES"
+
+/* Environment bits from configuration mechanism */
+extern int trust_executable_bit;
+extern int trust_ctime;
+extern int check_stat;
+extern int has_symlinks;
+extern int minimum_abbrev, default_abbrev;
+extern int ignore_case;
+extern int assume_unchanged;
+extern int prefer_symlink_refs;
+extern int warn_ambiguous_refs;
+extern int warn_on_object_refname_ambiguity;
+extern char *apply_default_whitespace;
+extern char *apply_default_ignorewhitespace;
+extern const char *git_attributes_file;
+extern const char *git_hooks_path;
+extern int zlib_compression_level;
+extern int pack_compression_level;
+extern size_t packed_git_window_size;
+extern size_t packed_git_limit;
+extern size_t delta_base_cache_limit;
+extern unsigned long big_file_threshold;
+extern unsigned long pack_size_limit_cfg;
+
+/*
+ * Accessors for the core.sharedrepository config which lazy-load the value
+ * from the config (if not already set). The "reset" function can be
+ * used to unset "set" or cached value, meaning that the value will be loaded
+ * fresh from the config file on the next call to get_shared_repository().
+ */
+void set_shared_repository(int value);
+int get_shared_repository(void);
+void reset_shared_repository(void);
+
+extern int core_preload_index;
+extern int precomposed_unicode;
+extern int protect_hfs;
+extern int protect_ntfs;
+
+extern int core_apply_sparse_checkout;
+extern int core_sparse_checkout_cone;
+extern int sparse_expect_files_outside_of_patterns;
+
+/*
+ * Returns the boolean value of $GIT_OPTIONAL_LOCKS (or the default value).
+ */
+int use_optional_locks(void);
+
+enum log_refs_config {
+ LOG_REFS_UNSET = -1,
+ LOG_REFS_NONE = 0,
+ LOG_REFS_NORMAL,
+ LOG_REFS_ALWAYS
+};
+extern enum log_refs_config log_all_ref_updates;
+
+enum rebase_setup_type {
+ AUTOREBASE_NEVER = 0,
+ AUTOREBASE_LOCAL,
+ AUTOREBASE_REMOTE,
+ AUTOREBASE_ALWAYS
+};
+
+enum push_default_type {
+ PUSH_DEFAULT_NOTHING = 0,
+ PUSH_DEFAULT_MATCHING,
+ PUSH_DEFAULT_SIMPLE,
+ PUSH_DEFAULT_UPSTREAM,
+ PUSH_DEFAULT_CURRENT,
+ PUSH_DEFAULT_UNSPECIFIED
+};
+
+extern enum rebase_setup_type autorebase;
+extern enum push_default_type push_default;
+
+enum object_creation_mode {
+ OBJECT_CREATION_USES_HARDLINKS = 0,
+ OBJECT_CREATION_USES_RENAMES = 1
+};
+
+extern enum object_creation_mode object_creation_mode;
+
+extern char *notes_ref_name;
+
+extern int grafts_replace_parents;
+
+extern int repository_format_precious_objects;
+extern int repository_format_worktree_config;
+
+/*
+ * Create a temporary file rooted in the object database directory, or
+ * die on failure. The filename is taken from "pattern", which should have the
+ * usual "XXXXXX" trailer, and the resulting filename is written into the
+ * "template" buffer. Returns the open descriptor.
+ */
+int odb_mkstemp(struct strbuf *temp_filename, const char *pattern);
+
+/*
+ * Create a pack .keep file named "name" (which should generally be the output
+ * of odb_pack_name). Returns a file descriptor opened for writing, or -1 on
+ * error.
+ */
+int odb_pack_keep(const char *name);
+
+const char *get_log_output_encoding(void);
+const char *get_commit_output_encoding(void);
+
+extern const char *git_commit_encoding;
+extern const char *git_log_output_encoding;
+
+extern const char *editor_program;
+extern const char *askpass_program;
+extern const char *excludes_file;
+
+/*
+ * Should we print an ellipsis after an abbreviated SHA-1 value
+ * when doing diff-raw output or indicating a detached HEAD?
+ */
+int print_sha1_ellipsis(void);
+
#endif
exec-cmd.c
+1
index 042d9247a5..fae0d4b244 100644
--- a/exec-cmd.c
+++ b/exec-cmd.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "abspath.h"
+#include "environment.h"
#include "exec-cmd.h"
#include "gettext.h"
#include "quote.h"
fetch-pack.c
+1
index c119080140..c453a4168f 100644
--- a/fetch-pack.c
+++ b/fetch-pack.c
@@ -2,6 +2,7 @@
#include "alloc.h"
#include "repository.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "lockfile.h"
fsmonitor.c
+1
index a5b9e75437..c956a347a2 100644
--- a/fsmonitor.c
+++ b/fsmonitor.c
@@ -1,6 +1,7 @@
#include "cache.h"
#include "config.h"
#include "dir.h"
+#include "environment.h"
#include "ewah/ewok.h"
#include "fsmonitor.h"
#include "fsmonitor-ipc.h"
gettext.c
+1
index 3e7b3baabc..85d3d3424e 100644
--- a/gettext.c
+++ b/gettext.c
@@ -4,6 +4,7 @@
#include "cache.h"
#include "abspath.h"
+#include "environment.h"
#include "exec-cmd.h"
#include "gettext.h"
#include "strbuf.h"
git.c
+1
index 22ce4f14b6..b24c105e83 100644
--- a/git.c
+++ b/git.c
@@ -1,5 +1,6 @@
#include "builtin.h"
#include "config.h"
+#include "environment.h"
#include "exec-cmd.h"
#include "gettext.h"
#include "help.h"
http-backend.c
+1
index 42e6c2596e..042ccf12e8 100644
--- a/http-backend.c
+++ b/http-backend.c
@@ -1,6 +1,7 @@
#include "cache.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "hex.h"
#include "repository.h"
#include "refs.h"
http-push.c
+1
index 88aa045ecb..40373bc486 100644
--- a/http-push.c
+++ b/http-push.c
@@ -1,4 +1,5 @@
#include "cache.h"
+#include "environment.h"
#include "hex.h"
#include "repository.h"
#include "commit.h"
log-tree.c
+1
index 3adcb576e4..e2bf8d6df7 100644
--- a/log-tree.c
+++ b/log-tree.c
@@ -2,6 +2,7 @@
#include "commit-reach.h"
#include "config.h"
#include "diff.h"
+#include "environment.h"
#include "hex.h"
#include "object-store.h"
#include "repository.h"
ls-refs.c
+1
index ae38889bf0..12cbb40a19 100644
--- a/ls-refs.c
+++ b/ls-refs.c
@@ -1,4 +1,5 @@
#include "cache.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "repository.h"
mailmap.c
+1
index da2589b082..2c6e9b238d 100644
--- a/mailmap.c
+++ b/mailmap.c
@@ -1,4 +1,5 @@
#include "cache.h"
+#include "environment.h"
#include "string-list.h"
#include "mailmap.h"
#include "object-store.h"
merge-ort.c
+1
index a26cad5f91..f3d7c202f5 100644
--- a/merge-ort.c
+++ b/merge-ort.c
@@ -26,6 +26,7 @@
#include "diff.h"
#include "diffcore.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "entry.h"
merge-recursive.c
+1
index f918cea4c6..d5f3772491 100644
--- a/merge-recursive.c
+++ b/merge-recursive.c
@@ -17,6 +17,7 @@
#include "diff.h"
#include "diffcore.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "ll-merge.h"
name-hash.c
+1
index bb9eae55ac..2c2861efd1 100644
--- a/name-hash.c
+++ b/name-hash.c
@@ -6,6 +6,7 @@
* Copyright (C) 2008 Linus Torvalds
*/
#include "cache.h"
+#include "environment.h"
#include "gettext.h"
#include "thread-utils.h"
#include "trace2.h"
notes-utils.c
+1
index da08e2e8e5..8797271faf 100644
--- a/notes-utils.c
+++ b/notes-utils.c
@@ -1,6 +1,7 @@
#include "cache.h"
#include "config.h"
#include "commit.h"
+#include "environment.h"
#include "gettext.h"
#include "refs.h"
#include "notes-utils.h"
notes.c
+1
index a7187236e9..9288c1a070 100644
--- a/notes.c
+++ b/notes.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "config.h"
+#include "environment.h"
#include "hex.h"
#include "notes.h"
#include "object-store.h"
object-file.c
+1
index bdf68763a5..3da6cd6886 100644
--- a/object-file.c
+++ b/object-file.c
@@ -10,6 +10,7 @@
#include "abspath.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "string-list.h"
object-name.c
+1
index 2c927bbded..3b0ce8ef05 100644
--- a/object-name.c
+++ b/object-name.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "tag.h"
pack-bitmap-write.c
+1
index 7dc7f0ba55..63f16080c9 100644
--- a/pack-bitmap-write.c
+++ b/pack-bitmap-write.c
@@ -1,5 +1,6 @@
#include "git-compat-util.h"
#include "alloc.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "object-store.h"
pack-check.c
+1
index 7ed594d667..6974e40a95 100644
--- a/pack-check.c
+++ b/pack-check.c
@@ -1,4 +1,5 @@
#include "cache.h"
+#include "environment.h"
#include "hex.h"
#include "repository.h"
#include "pack.h"
pack-write.c
+1
index 87156f89d2..f171405495 100644
--- a/pack-write.c
+++ b/pack-write.c
@@ -1,4 +1,5 @@
#include "cache.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "pack.h"
packfile.c
+1
index 8c117ccee2..4b5b841d04 100644
--- a/packfile.c
+++ b/packfile.c
@@ -1,5 +1,6 @@
#include "git-compat-util.h"
#include "alloc.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "list.h"
parse-options-cb.c
+1
index fbf4b01019..15d008c3da 100644
--- a/parse-options-cb.c
+++ b/parse-options-cb.c
@@ -4,6 +4,7 @@
#include "cache.h"
#include "commit.h"
#include "color.h"
+#include "environment.h"
#include "gettext.h"
#include "string-list.h"
#include "strvec.h"
path.c
+1
index 3976c0d7ac..5d5a15c13d 100644
--- a/path.c
+++ b/path.c
@@ -3,6 +3,7 @@
*/
#include "cache.h"
#include "abspath.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "repository.h"
pathspec.c
+1
index 53763e272f..5fb7b5f26c 100644
--- a/pathspec.c
+++ b/pathspec.c
@@ -2,6 +2,7 @@
#include "abspath.h"
#include "config.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "pathspec.h"
#include "attr.h"
preload-index.c
+1
index 4b45e1d691..52544d004e 100644
--- a/preload-index.c
+++ b/preload-index.c
@@ -4,6 +4,7 @@
#include "cache.h"
#include "pathspec.h"
#include "dir.h"
+#include "environment.h"
#include "fsmonitor.h"
#include "gettext.h"
#include "config.h"
pretty.c
+1
index 9d7922dcc6..2b6d0f52c9 100644
--- a/pretty.c
+++ b/pretty.c
@@ -2,6 +2,7 @@
#include "alloc.h"
#include "config.h"
#include "commit.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "utf8.h"
prompt.c
+1
index 50df17279d..ba10813b31 100644
--- a/prompt.c
+++ b/prompt.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "config.h"
+#include "environment.h"
#include "run-command.h"
#include "strbuf.h"
#include "prompt.h"
protocol.c
+1
index c53f7df5be..bdb32e1eeb 100644
--- a/protocol.c
+++ b/protocol.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "config.h"
+#include "environment.h"
#include "protocol.h"
static enum protocol_version parse_protocol_version(const char *value)
prune-packed.c
+1
index cff5ad569c..5a57072a7a 100644
--- a/prune-packed.c
+++ b/prune-packed.c
@@ -1,4 +1,5 @@
#include "cache.h"
+#include "environment.h"
#include "gettext.h"
#include "object-store.h"
#include "packfile.h"
range-diff.c
+1
index 1bfc612e27..815fb24c9c 100644
--- a/range-diff.c
+++ b/range-diff.c
@@ -1,4 +1,5 @@
#include "cache.h"
+#include "environment.h"
#include "gettext.h"
#include "range-diff.h"
#include "string-list.h"
read-cache.c
+1
index 9a8d5fe97e..34567c1d55 100644
--- a/read-cache.c
+++ b/read-cache.c
@@ -18,6 +18,7 @@
#include "tree.h"
#include "commit.h"
#include "blob.h"
+#include "environment.h"
#include "gettext.h"
#include "resolve-undo.h"
#include "run-command.h"
rebase-interactive.c
+1
index 7c885c35bf..a83334dd56 100644
--- a/rebase-interactive.c
+++ b/rebase-interactive.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "commit.h"
+#include "environment.h"
#include "gettext.h"
#include "sequencer.h"
#include "rebase-interactive.h"
ref-filter.c
+1
index 9a830bedef..1489fbfe4a 100644
--- a/ref-filter.c
+++ b/ref-filter.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "alloc.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "parse-options.h"
refs.c
+1
index 385051752f..04520e5a6b 100644
--- a/refs.c
+++ b/refs.c
@@ -5,6 +5,7 @@
#include "cache.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "hashmap.h"
#include "gettext.h"
#include "hex.h"
refs/files-backend.c
+1
index eb14d124e3..0c3138ede8 100644
--- a/refs/files-backend.c
+++ b/refs/files-backend.c
@@ -1,5 +1,6 @@
#include "../cache.h"
#include "../config.h"
+#include "../environment.h"
#include "../gettext.h"
#include "../hex.h"
#include "../refs.h"
remote-curl.c
+1
index 943cd6fe6c..eb382a1e35 100644
--- a/remote-curl.c
+++ b/remote-curl.c
@@ -1,6 +1,7 @@
#include "git-compat-util.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "remote.h"
remote.c
+1
index 2bae247a0a..aeca3ff813 100644
--- a/remote.c
+++ b/remote.c
@@ -2,6 +2,7 @@
#include "abspath.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "remote.h"
revision.c
+1
index 7423e23327..53fdeef078 100644
--- a/revision.c
+++ b/revision.c
@@ -1,6 +1,7 @@
#include "git-compat-util.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "object-store.h"
run-command.c
+1
index 2c8b4cd9bf..614d48fa9a 100644
--- a/run-command.c
+++ b/run-command.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "run-command.h"
+#include "environment.h"
#include "exec-cmd.h"
#include "gettext.h"
#include "sigchain.h"
server-info.c
+1
index ae96d784e5..355b6e01a5 100644
--- a/server-info.c
+++ b/server-info.c
@@ -1,6 +1,7 @@
#include "cache.h"
#include "alloc.h"
#include "dir.h"
+#include "environment.h"
#include "hex.h"
#include "repository.h"
#include "refs.h"
setup.c
+1
index 8f385d9f29..cfdc849a78 100644
--- a/setup.c
+++ b/setup.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "abspath.h"
+#include "environment.h"
#include "gettext.h"
#include "repository.h"
#include "config.h"
sparse-index.c
+1
index fdae9011b8..886054729e 100644
--- a/sparse-index.c
+++ b/sparse-index.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "alloc.h"
+#include "environment.h"
#include "gettext.h"
#include "repository.h"
#include "sparse-index.h"
streaming.c
+1
index 6c69f59504..024fd796b7 100644
--- a/streaming.c
+++ b/streaming.c
@@ -2,6 +2,7 @@
* Copyright (c) 2011, Google Inc.
*/
#include "cache.h"
+#include "environment.h"
#include "streaming.h"
#include "repository.h"
#include "object-store.h"
submodule-config.c
+1
index 38663801aa..28fdfddccf 100644
--- a/submodule-config.c
+++ b/submodule-config.c
@@ -1,6 +1,7 @@
#include "cache.h"
#include "alloc.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "repository.h"
submodule.c
+1
index 13ff333f68..acf030b95e 100644
--- a/submodule.c
+++ b/submodule.c
@@ -8,6 +8,7 @@
#include "dir.h"
#include "diff.h"
#include "commit.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "revision.h"
t/helper/test-fast-rebase.c
+1
index 68bbc41b33..627a6bdc3d 100644
--- a/t/helper/test-fast-rebase.c
+++ b/t/helper/test-fast-rebase.c
@@ -15,6 +15,7 @@
#include "cache.h"
#include "cache-tree.h"
#include "commit.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "lockfile.h"
t/helper/test-lazy-init-name-hash.c
+1
index ab86c14c8b..2b678a4579 100644
--- a/t/helper/test-lazy-init-name-hash.c
+++ b/t/helper/test-lazy-init-name-hash.c
@@ -1,6 +1,7 @@
#define USE_THE_INDEX_VARIABLE
#include "test-tool.h"
#include "cache.h"
+#include "environment.h"
#include "parse-options.h"
static int single;
t/helper/test-path-utils.c
+1
index d3d00dc34f..cc266e3ec0 100644
--- a/t/helper/test-path-utils.c
+++ b/t/helper/test-path-utils.c
@@ -1,6 +1,7 @@
#include "test-tool.h"
#include "cache.h"
#include "abspath.h"
+#include "environment.h"
#include "string-list.h"
#include "utf8.h"
t/helper/test-repository.c
+1
index 10a6dfc216..c444775eb0 100644
--- a/t/helper/test-repository.c
+++ b/t/helper/test-repository.c
@@ -3,6 +3,7 @@
#include "commit-graph.h"
#include "commit.h"
#include "config.h"
+#include "environment.h"
#include "hex.h"
#include "object-store.h"
#include "object.h"
tag.c
+1
index 3408bb9433..3943423179 100644
--- a/tag.c
+++ b/tag.c
@@ -1,4 +1,5 @@
#include "cache.h"
+#include "environment.h"
#include "tag.h"
#include "object-store.h"
#include "commit.h"
tmp-objdir.c
+1
index fff15cb6b5..5adad1925d 100644
--- a/tmp-objdir.c
+++ b/tmp-objdir.c
@@ -3,6 +3,7 @@
#include "abspath.h"
#include "chdir-notify.h"
#include "dir.h"
+#include "environment.h"
#include "sigchain.h"
#include "string-list.h"
#include "strbuf.h"
trace.c
+1
index de004f6298..9c85b71ec6 100644
--- a/trace.c
+++ b/trace.c
@@ -23,6 +23,7 @@
#include "cache.h"
#include "abspath.h"
+#include "environment.h"
#include "quote.h"
#include "wrapper.h"
transport-helper.c
+1
index 09048eab48..3313bb7409 100644
--- a/transport-helper.c
+++ b/transport-helper.c
@@ -4,6 +4,7 @@
#include "run-command.h"
#include "commit.h"
#include "diff.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "revision.h"
transport.c
+1
index c6179b801e..4f06ccbee0 100644
--- a/transport.c
+++ b/transport.c
@@ -1,6 +1,7 @@
#include "cache.h"
#include "alloc.h"
#include "config.h"
+#include "environment.h"
#include "hex.h"
#include "transport.h"
#include "hook.h"
unpack-trees.c
+1
index 84e0d2e8af..0ff4bbc6b9 100644
--- a/unpack-trees.c
+++ b/unpack-trees.c
@@ -3,6 +3,7 @@
#include "repository.h"
#include "config.h"
#include "dir.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "tree.h"
upload-pack.c
+1
index eea9e6a6e8..1155f79538 100644
--- a/upload-pack.c
+++ b/upload-pack.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "config.h"
+#include "environment.h"
#include "gettext.h"
#include "hex.h"
#include "refs.h"
worktree.c
+1
index fe4345012c..c2671b0cdf 100644
--- a/worktree.c
+++ b/worktree.c
@@ -1,6 +1,7 @@
#include "cache.h"
#include "abspath.h"
#include "alloc.h"
+#include "environment.h"
#include "gettext.h"
#include "repository.h"
#include "refs.h"