summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChester Liu <skyline75489@outlook.com>2020-12-30 23:46:26 +0800
committerGitHub <noreply@github.com>2020-12-30 15:46:26 +0000
commit632800eda7108e5e8d90dd9e3e985da3deecf365 (patch)
treeba1c53f6efe0ec373ea311fec8895a278b2f4bcd
parentc074e462926f939db1b63b6a40df98da3fb33b6b (diff)
downloadgitea-632800eda7108e5e8d90dd9e3e985da3deecf365.tar.gz
gitea-632800eda7108e5e8d90dd9e3e985da3deecf365.zip
Check for 'main' as potential default branch name (#14193)
-rw-r--r--modules/repository/init.go5
-rw-r--r--routers/private/hook.go4
-rw-r--r--services/mirror/mirror.go4
3 files changed, 11 insertions, 2 deletions
diff --git a/modules/repository/init.go b/modules/repository/init.go
index 16012864b1..a100456e77 100644
--- a/modules/repository/init.go
+++ b/modules/repository/init.go
@@ -243,6 +243,7 @@ func adoptRepository(ctx models.DBContext, repoPath string, u *models.User, repo
found := false
hasDefault := false
hasMaster := false
+ hasMain := false
for _, branch := range branches {
if branch == repo.DefaultBranch {
found = true
@@ -251,6 +252,8 @@ func adoptRepository(ctx models.DBContext, repoPath string, u *models.User, repo
hasDefault = true
} else if branch == "master" {
hasMaster = true
+ } else if branch == "main" {
+ hasMain = true
}
}
if !found {
@@ -258,6 +261,8 @@ func adoptRepository(ctx models.DBContext, repoPath string, u *models.User, repo
repo.DefaultBranch = setting.Repository.DefaultBranch
} else if hasMaster {
repo.DefaultBranch = "master"
+ } else if hasMain {
+ repo.DefaultBranch = "main"
} else if len(branches) > 0 {
repo.DefaultBranch = branches[0]
} else {
diff --git a/routers/private/hook.go b/routers/private/hook.go
index 1b9ab000e4..34e849f6f7 100644
--- a/routers/private/hook.go
+++ b/routers/private/hook.go
@@ -412,8 +412,8 @@ func HookPostReceive(ctx *macaron.Context, opts private.HookOptions) {
RepoName: repoName,
}
updates = append(updates, &option)
- if repo.IsEmpty && option.IsBranch() && option.BranchName() == "master" {
- // put the master branch first
+ if repo.IsEmpty && option.IsBranch() && (option.BranchName() == "master" || option.BranchName() == "main") {
+ // put the master/main branch first
copy(updates[1:], updates)
updates[0] = &option
}
diff --git a/services/mirror/mirror.go b/services/mirror/mirror.go
index a2acb6f363..328e23ad2f 100644
--- a/services/mirror/mirror.go
+++ b/services/mirror/mirror.go
@@ -521,6 +521,7 @@ func checkAndUpdateEmptyRepository(m *models.Mirror, gitRepo *git.Repository, re
hasDefault := false
hasMaster := false
+ hasMain := false
defaultBranchName := m.Repo.DefaultBranch
if len(defaultBranchName) == 0 {
defaultBranchName = setting.Repository.DefaultBranch
@@ -540,6 +541,7 @@ func checkAndUpdateEmptyRepository(m *models.Mirror, gitRepo *git.Repository, re
hasDefault = hasDefault || name == defaultBranchName
hasMaster = hasMaster || name == "master"
+ hasMain = hasMain || name == "main"
}
if len(firstName) > 0 {
@@ -547,6 +549,8 @@ func checkAndUpdateEmptyRepository(m *models.Mirror, gitRepo *git.Repository, re
m.Repo.DefaultBranch = defaultBranchName
} else if hasMaster {
m.Repo.DefaultBranch = "master"
+ } else if hasMain {
+ m.Repo.DefaultBranch = "main"
} else {
m.Repo.DefaultBranch = firstName
}