From 76bbad4e746af977fea66c719d38048869de36c4 Mon Sep 17 00:00:00 2001 From: John Olheiser Date: Thu, 25 Jan 2024 12:04:50 -0600 Subject: [PATCH] Check for sha256 support to use --object-format flag (#28928) This should fix https://github.com/go-gitea/gitea/issues/28927 Technically older versions of Git would support this flag as well, but per https://github.com/go-gitea/gitea/pull/28466 that's the version where using it (object-format=sha256) left "experimental" state. `sha1` is (currently) the default, so older clients should be unaffected in either case. Signed-off-by: jolheiser --- modules/git/repo.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/git/repo.go b/modules/git/repo.go index c3de2eb0adc32..db99d285a86a6 100644 --- a/modules/git/repo.go +++ b/modules/git/repo.go @@ -101,7 +101,9 @@ func InitRepository(ctx context.Context, repoPath string, bare bool, objectForma if !IsValidObjectFormat(objectFormatName) { return fmt.Errorf("invalid object format: %s", objectFormatName) } - cmd.AddOptionValues("--object-format", objectFormatName) + if SupportHashSha256 { + cmd.AddOptionValues("--object-format", objectFormatName) + } if bare { cmd.AddArguments("--bare")