mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 08:30:25 +08:00 
			
		
		
		
	properly set symbolic-ref HEAD when a repo is created with a non-master default branch (#12135)
This fixes an issue I noticed with #10803: when you create a repo with a non-master default branch, gitea doesn't change the remote ref HEAD, so it still points at refs/heads/master. As a result, cloning my repos gives me error messages and doesn't check out the desired default branch, so I need to manually check it out after cloning.
This commit is contained in:
		@@ -214,6 +214,13 @@ func initRepository(ctx models.DBContext, repoPath string, u *models.User, repo
 | 
			
		||||
	repo.DefaultBranch = "master"
 | 
			
		||||
	if len(opts.DefaultBranch) > 0 {
 | 
			
		||||
		repo.DefaultBranch = opts.DefaultBranch
 | 
			
		||||
		gitRepo, err := git.OpenRepository(repo.RepoPath())
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			return fmt.Errorf("openRepository: %v", err)
 | 
			
		||||
		}
 | 
			
		||||
		if err = gitRepo.SetDefaultBranch(repo.DefaultBranch); err != nil {
 | 
			
		||||
			return fmt.Errorf("setDefaultBranch: %v", err)
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if err = models.UpdateRepositoryCtx(ctx, repo, false); err != nil {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user