From 5866eb23217de4d29b181e30c26cee28ebc6aedc Mon Sep 17 00:00:00 2001 From: Ethan Koenig Date: Thu, 26 Oct 2017 23:10:54 -0700 Subject: Code/repo search (#2582) Indexed search of repository contents (for default branch only) --- models/repo.go | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'models/repo.go') diff --git a/models/repo.go b/models/repo.go index eca71568ee..8d57ae51a5 100644 --- a/models/repo.go +++ b/models/repo.go @@ -205,10 +205,11 @@ type Repository struct { ExternalMetas map[string]string `xorm:"-"` Units []*RepoUnit `xorm:"-"` - IsFork bool `xorm:"INDEX NOT NULL DEFAULT false"` - ForkID int64 `xorm:"INDEX"` - BaseRepo *Repository `xorm:"-"` - Size int64 `xorm:"NOT NULL DEFAULT 0"` + IsFork bool `xorm:"INDEX NOT NULL DEFAULT false"` + ForkID int64 `xorm:"INDEX"` + BaseRepo *Repository `xorm:"-"` + Size int64 `xorm:"NOT NULL DEFAULT 0"` + IndexerStatus *RepoIndexerStatus `xorm:"-"` Created time.Time `xorm:"-"` CreatedUnix int64 `xorm:"INDEX created"` @@ -782,8 +783,10 @@ func UpdateLocalCopyBranch(repoPath, localPath, branch string) error { if err != nil { return fmt.Errorf("git fetch origin: %v", err) } - if err := git.ResetHEAD(localPath, true, "origin/"+branch); err != nil { - return fmt.Errorf("git reset --hard origin/%s: %v", branch, err) + if len(branch) > 0 { + if err := git.ResetHEAD(localPath, true, "origin/"+branch); err != nil { + return fmt.Errorf("git reset --hard origin/%s: %v", branch, err) + } } } return nil @@ -989,6 +992,7 @@ func MigrateRepository(doer, u *User, opts MigrateRepoOptions) (*Repository, err if err = SyncReleasesWithTags(repo, gitRepo); err != nil { log.Error(4, "Failed to synchronize tags to releases for repository: %v", err) } + UpdateRepoIndexer(repo) } if err = repo.UpdateSize(); err != nil { @@ -1883,6 +1887,7 @@ func DeleteRepository(doer *User, uid, repoID int64) error { go HookQueue.Add(repo.ID) } + DeleteRepoFromIndexer(repo) return nil } -- cgit v1.2.3