From: Sina Siadat Date: Sun, 6 Sep 2015 20:34:35 +0000 (+0430) Subject: Set IsBare true if migrated repo is empty. X-Git-Tag: v0.9.99~1063^2 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=ae1650824cd50890837d04b310d8ab0f54d46912;p=gitea.git Set IsBare true if migrated repo is empty. Executes `git log -1` and sets IsBare to true if stderr contains this string: fatal: bad default revision 'HEAD' --- diff --git a/models/repo.go b/models/repo.go index 2835b6f9e3..06c97baf24 100644 --- a/models/repo.go +++ b/models/repo.go @@ -470,6 +470,12 @@ func MigrateRepository(u *User, name, desc string, private, mirror bool, url str return repo, fmt.Errorf("create update hook: %v", err) } + // Check if repository is empty. + _, stderr, err = com.ExecCmdDir(repoPath, "git", "log", "-1") + if err != nil && strings.Contains(stderr, "fatal: bad default revision 'HEAD'") { + repo.IsBare = true + } + // Check if repository has master branch, if so set it to default branch. gitRepo, err := git.OpenRepository(repoPath) if err != nil {