aboutsummaryrefslogtreecommitdiff
path: root/hash.h
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2025-07-17 09:30:56 -0700
committerJunio C Hamano <gitster@pobox.com>2025-07-17 09:30:56 -0700
commit86c9c14eb9c7bfa20efd8d65f1aaa685282b7221 (patch)
treefd758d24e1db2726312822e7f8e5d1ffcdd13444 /hash.h
parent90c0775e972847832ac8dfa6a14bc4c3abacd914 (diff)
parentc79bb70a2e7d9158ec165ea16ad45371cd6e350d (diff)
downloadgit-86c9c14eb9c7bfa20efd8d65f1aaa685282b7221.tar.xz
Merge branch 'bc/use-sha256-by-default-in-3.0' into ps/config-wo-the-repository
* bc/use-sha256-by-default-in-3.0: Enable SHA-256 by default in breaking changes mode help: add a build option for default hash t5300: choose the built-in hash outside of a repo t4042: choose the built-in hash outside of a repo t1007: choose the built-in hash outside of a repo t: default to compile-time default hash if not set setup: use the default algorithm to initialize repo format Use legacy hash for legacy formats builtin: use default hash when outside a repository hash: add a constant for the legacy hash algorithm hash: add a constant for the default hash algorithm
Diffstat (limited to 'hash.h')
-rw-r--r--hash.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/hash.h b/hash.h
index ec594c63a6..fae966b23c 100644
--- a/hash.h
+++ b/hash.h
@@ -175,6 +175,16 @@ static inline void git_SHA256_Clone(git_SHA256_CTX *dst, const git_SHA256_CTX *s
/* Number of algorithms supported (including unknown). */
#define GIT_HASH_NALGOS (GIT_HASH_SHA256 + 1)
+/* Default hash algorithm if unspecified. */
+#ifdef WITH_BREAKING_CHANGES
+# define GIT_HASH_DEFAULT GIT_HASH_SHA256
+#else
+# define GIT_HASH_DEFAULT GIT_HASH_SHA1
+#endif
+
+/* Legacy hash algorithm. Implied for older data formats which don't specify. */
+#define GIT_HASH_SHA1_LEGACY GIT_HASH_SHA1
+
/* "sha1", big-endian */
#define GIT_SHA1_FORMAT_ID 0x73686131