Documentation ¶
Index ¶
- Constants
- Variables
- func AccessibleRepoIDsQuery(user *user_model.User) *builder.Builder
- func AccessibleRepositoryCondition(user *user_model.User, unitType unit.Type) builder.Cond
- func AddReleaseAttachments(ctx context.Context, releaseID int64, attachmentUUIDs []string) (err error)
- func AddRepoArchiver(ctx context.Context, archiver *RepoArchiver) error
- func AttachmentRelativePath(uuid string) string
- func ChangeCollaborationAccessMode(ctx context.Context, repo *Repository, uid int64, mode perm.AccessMode) error
- func ChangeRepositoryName(doer *user_model.User, repo *Repository, newRepoName string) (err error)
- func CheckCreateRepository(doer, u *user_model.User, name string, overwriteOrAdopt bool) error
- func ComposeHTTPSCloneURL(owner, repo string) string
- func CopyLanguageStat(originalRepo, destRepo *Repository) error
- func CountCollaborators(repoID int64) (int64, error)
- func CountNullArchivedRepository(ctx context.Context) (int64, error)
- func CountOrphanedAttachments(ctx context.Context) (int64, error)
- func CountReleasesByRepoID(repoID int64, opts FindReleasesOptions) (int64, error)
- func CountRepositories(ctx context.Context, opts CountRepositoryOptions) (int64, error)
- func CountTopics(opts *FindTopicOptions) (int64, error)
- func DecrementRepoForkNum(ctx context.Context, repoID int64) error
- func DeleteAllRepoArchives() error
- func DeleteAttachment(a *Attachment, remove bool) error
- func DeleteAttachments(ctx context.Context, attachments []*Attachment, remove bool) (int, error)
- func DeleteAttachmentsByComment(commentID int64, remove bool) (int, error)
- func DeleteAttachmentsByIssue(issueID int64, remove bool) (int, error)
- func DeleteAttachmentsByRelease(ctx context.Context, releaseID int64) error
- func DeleteMirrorByRepoID(repoID int64) error
- func DeleteOrphanedAttachments(ctx context.Context) error
- func DeletePushMirrors(ctx context.Context, opts PushMirrorOptions) error
- func DeleteRedirect(ctx context.Context, ownerID int64, repoName string) error
- func DeleteReleaseByID(ctx context.Context, id int64) error
- func DeleteRepoArchiver(ctx context.Context, archiver *RepoArchiver) error
- func DeleteUploadByUUID(uuid string) error
- func DeleteUploads(uploads ...*Upload) (err error)
- func ExistAttachmentsByUUID(ctx context.Context, uuid string) (bool, error)
- func ExistsRepoArchiverWithStoragePath(ctx context.Context, storagePath string) (bool, error)
- func ExistsWithAvatarAtStoragePath(ctx context.Context, storagePath string) (bool, error)
- func FindReposMapByIDs(repoIDs []int64, res map[int64]*Repository) error
- func FindUserCodeAccessibleOwnerRepoIDs(ctx context.Context, ownerID int64, user *user_model.User) ([]int64, error)
- func FindUserCodeAccessibleRepoIDs(ctx context.Context, user *user_model.User) ([]int64, error)
- func FixNullArchivedRepository(ctx context.Context) (int64, error)
- func GenerateTopics(ctx context.Context, templateRepo, generateRepo *Repository) error
- func GetIssuePosters(ctx context.Context, repo *Repository, isPull bool) ([]*user_model.User, error)
- func GetReleaseAttachments(ctx context.Context, rels ...*Release) (err error)
- func GetReleaseCountByRepoID(ctx context.Context, repoID int64, opts FindReleasesOptions) (int64, error)
- func GetRepoAssignees(ctx context.Context, repo *Repository) (_ []*user_model.User, err error)
- func GetRepoWatchers(repoID int64, opts db.ListOptions) ([]*user_model.User, error)
- func GetRepoWatchersIDs(ctx context.Context, repoID int64) ([]int64, error)
- func GetRepositoriesMapByIDs(ids []int64) (map[int64]*Repository, error)
- func GetReviewers(ctx context.Context, repo *Repository, doerID, posterID int64) ([]*user_model.User, error)
- func GetStargazers(repo *Repository, opts db.ListOptions) ([]*user_model.User, error)
- func GetUnindexedRepos(indexerType RepoIndexerType, maxRepoID int64, page, pageSize int) ([]int64, error)
- func HasForkedRepo(ownerID, repoID int64) bool
- func IncrementRepoForkNum(ctx context.Context, repoID int64) error
- func InsertMirror(ctx context.Context, mirror *Mirror) error
- func InsertPushMirror(ctx context.Context, m *PushMirror) error
- func IsCollaborator(ctx context.Context, repoID, userID int64) (bool, error)
- func IsErrAttachmentNotExist(err error) bool
- func IsErrReachLimitOfRepo(err error) bool
- func IsErrRedirectNotExist(err error) bool
- func IsErrReleaseAlreadyExist(err error) bool
- func IsErrReleaseNotExist(err error) bool
- func IsErrRepoAlreadyExist(err error) bool
- func IsErrRepoFilesAlreadyExist(err error) bool
- func IsErrRepoNotExist(err error) bool
- func IsErrTopicNotExist(err error) bool
- func IsErrUnitTypeNotExist(err error) bool
- func IsErrUploadNotExist(err error) bool
- func IsErrUserDoesNotHaveAccessToRepo(err error) bool
- func IsErrWikiAlreadyExist(err error) bool
- func IsErrWikiInvalidFileName(err error) bool
- func IsErrWikiReservedName(err error) bool
- func IsOwnerMemberCollaborator(repo *Repository, userID int64) (bool, error)
- func IsReleaseExist(ctx context.Context, repoID int64, tagName string) (bool, error)
- func IsRepositoryExist(ctx context.Context, u *user_model.User, repoName string) (bool, error)
- func IsStaring(ctx context.Context, userID, repoID int64) bool
- func IsUsableRepoName(name string) error
- func IsWatchMode(mode WatchMode) bool
- func IsWatching(userID, repoID int64) bool
- func LookupRedirect(ownerID int64, repoName string) (int64, error)
- func MirrorsIterate(limit int, f func(idx int, bean interface{}) error) error
- func NewRedirect(ctx context.Context, ownerID, repoID int64, oldRepoName, newRepoName string) error
- func PushMirrorsIterate(ctx context.Context, limit int, f func(idx int, bean interface{}) error) error
- func PushUpdateDeleteTag(repo *Repository, tagName string) error
- func PushUpdateDeleteTagsContext(ctx context.Context, repo *Repository, tags []string) error
- func RemoveTopicsFromRepo(ctx context.Context, repoID int64) error
- func RepoPath(userName, repoName string) string
- func SanitizeAndValidateTopics(topics []string) (validTopics, invalidTopics []string)
- func SaveOrUpdateTag(repo *Repository, newRel *Release) error
- func SaveTopics(repoID int64, topicNames ...string) error
- func SearchRepositoryCondition(opts *SearchRepoOptions) builder.Cond
- func SearchRepositoryIDs(opts *SearchRepoOptions) ([]int64, int64, error)
- func SearchRepositoryIDsByCondition(ctx context.Context, cond builder.Cond) ([]int64, error)
- func SetArchiveRepoState(repo *Repository, isArchived bool) (err error)
- func SortReleases(rels []*Release)
- func StarRepo(userID, repoID int64, star bool) error
- func TouchMirror(ctx context.Context, m *Mirror) error
- func UpdateAttachment(ctx context.Context, atta *Attachment) error
- func UpdateAttachmentByUUID(ctx context.Context, attach *Attachment, cols ...string) error
- func UpdateDefaultBranch(repo *Repository) error
- func UpdateIndexerStatus(ctx context.Context, repo *Repository, indexerType RepoIndexerType, sha string) error
- func UpdateLanguageStats(repo *Repository, commitID string, stats map[string]int64) error
- func UpdateMirror(ctx context.Context, m *Mirror) error
- func UpdatePushMirror(ctx context.Context, m *PushMirror) error
- func UpdateRelease(ctx context.Context, rel *Release) error
- func UpdateReleasesMigrationsByType(gitServiceType structs.GitServiceType, originalAuthorID string, posterID int64) error
- func UpdateRepoArchiverStatus(ctx context.Context, archiver *RepoArchiver) error
- func UpdateRepoIssueNumbers(ctx context.Context, repoID int64, isPull, isClosed bool) error
- func UpdateRepoSize(ctx context.Context, repoID, size int64) error
- func UpdateRepoUnit(unit *RepoUnit) error
- func UpdateRepositoryCols(ctx context.Context, repo *Repository, cols ...string) error
- func UpdateRepositoryOwnerNames(ownerID int64, ownerName string) error
- func UpdateRepositoryUnits(repo *Repository, units []RepoUnit, deleteUnitTypes []unit.Type) (err error)
- func UpdateRepositoryUpdatedTime(repoID int64, updateTime time.Time) error
- func UploadLocalPath(uuid string) string
- func UserAccessRepoCond(idStr string, userID int64) builder.Cond
- func UserAssignedRepoCond(id string, userID int64) builder.Cond
- func UserCollaborationRepoCond(idStr string, userID int64) builder.Cond
- func UserCreateIssueRepoCond(id string, userID int64, isPull bool) builder.Cond
- func UserMentionedRepoCond(id string, userID int64) builder.Cond
- func UserOrgPublicUnitRepoCond(userID, orgID int64) builder.Cond
- func UserOrgTeamRepoCond(idStr string, userID int64) builder.Cond
- func UserOrgUnitRepoCond(idStr string, userID, orgID int64, unitType unit.Type) builder.Cond
- func UserOwnedRepoCond(userID int64) builder.Cond
- func ValidateTopic(topic string) bool
- func WatchIfAuto(ctx context.Context, userID, repoID int64, isWrite bool) error
- func WatchRepo(ctx context.Context, userID, repoID int64, doWatch bool) (err error)
- func WatchRepoMode(userID, repoID int64, mode WatchMode) (err error)
- func WikiPath(userName, repoName string) string
- type ArchiverStatus
- type Attachment
- func GetAttachmentByID(ctx context.Context, id int64) (*Attachment, error)
- func GetAttachmentByReleaseIDFileName(ctx context.Context, releaseID int64, fileName string) (*Attachment, error)
- func GetAttachmentByUUID(ctx context.Context, uuid string) (*Attachment, error)
- func GetAttachmentsByCommentID(ctx context.Context, commentID int64) ([]*Attachment, error)
- func GetAttachmentsByIssueID(ctx context.Context, issueID int64) ([]*Attachment, error)
- func GetAttachmentsByIssueIDImagesLatest(ctx context.Context, issueID int64) ([]*Attachment, error)
- func GetAttachmentsByUUIDs(ctx context.Context, uuids []string) ([]*Attachment, error)
- type CloneLink
- type Collaboration
- type Collaborator
- type CountRepositoryOptions
- type ErrAttachmentNotExist
- type ErrReachLimitOfRepo
- type ErrRedirectNotExist
- type ErrReleaseAlreadyExist
- type ErrReleaseNotExist
- type ErrRepoAlreadyExist
- type ErrRepoFilesAlreadyExist
- type ErrRepoNotExist
- type ErrTopicNotExist
- type ErrUnitTypeNotExist
- type ErrUploadNotExist
- type ErrUserDoesNotHaveAccessToRepo
- type ErrWikiAlreadyExist
- type ErrWikiInvalidFileName
- type ErrWikiReservedName
- type ExternalTrackerConfig
- type ExternalWikiConfig
- type FindReleasesOptions
- type FindRepoArchiversOption
- type FindTopicOptions
- type IssuesConfig
- type LanguageStat
- type LanguageStatList
- type MergeStyle
- type Mirror
- type PullRequestsConfig
- type PushMirror
- type PushMirrorOptions
- type Redirect
- type Release
- func GetLatestReleaseByRepoID(repoID int64) (*Release, error)
- func GetRelease(repoID int64, tagName string) (*Release, error)
- func GetReleaseByID(ctx context.Context, id int64) (*Release, error)
- func GetReleasesByRepoID(ctx context.Context, repoID int64, opts FindReleasesOptions) ([]*Release, error)
- func GetReleasesByRepoIDAndNames(ctx context.Context, repoID int64, tagNames []string) (rels []*Release, err error)
- func (r *Release) APIURL() string
- func (r *Release) GetExternalID() int64
- func (r *Release) GetExternalName() string
- func (r *Release) GetUserID() int64
- func (r *Release) HTMLURL() string
- func (r *Release) Link() string
- func (r *Release) LoadAttributes(ctx context.Context) error
- func (r *Release) RemapExternalUser(externalName string, externalID, userID int64) error
- func (r *Release) TarURL() string
- func (r *Release) ZipURL() string
- type RepoArchiver
- type RepoIndexerStatus
- type RepoIndexerType
- type RepoTopic
- type RepoUnit
- func (r *RepoUnit) BeforeSet(colName string, val xorm.Cell)
- func (r *RepoUnit) CodeConfig() *UnitConfig
- func (r *RepoUnit) ExternalTrackerConfig() *ExternalTrackerConfig
- func (r *RepoUnit) ExternalWikiConfig() *ExternalWikiConfig
- func (r *RepoUnit) IssuesConfig() *IssuesConfig
- func (r *RepoUnit) PullRequestsConfig() *PullRequestsConfig
- func (r *RepoUnit) ReleasesConfig() *UnitConfig
- func (r *RepoUnit) Unit() unit.Unit
- type Repository
- func FindUserOrgForks(ctx context.Context, repoID, userID int64) ([]*Repository, error)
- func GetForkedRepo(ownerID, repoID int64) *Repository
- func GetForks(repo *Repository, listOptions db.ListOptions) ([]*Repository, error)
- func GetForksByUserAndOrgs(ctx context.Context, user *user_model.User, repo *Repository) ([]*Repository, error)
- func GetRepositoriesByForkID(ctx context.Context, forkID int64) ([]*Repository, error)
- func GetRepositoryByID(ctx context.Context, id int64) (*Repository, error)
- func GetRepositoryByName(ownerID int64, name string) (*Repository, error)
- func GetRepositoryByOwnerAndName(ctx context.Context, ownerName, repoName string) (*Repository, error)
- func GetStarredRepos(ctx context.Context, userID int64, private bool, listOptions db.ListOptions) ([]*Repository, error)
- func GetTemplateRepo(ctx context.Context, repo *Repository) (*Repository, error)
- func GetUserFork(ctx context.Context, repoID, userID int64) (*Repository, error)
- func GetWatchedRepos(ctx context.Context, userID int64, private bool, listOptions db.ListOptions) ([]*Repository, int64, error)
- func ValuesRepository(m map[int64]*Repository) []*Repository
- func (repo *Repository) APIURL() string
- func (repo *Repository) AfterLoad()
- func (repo *Repository) AllowOnlyContributorsToTrackTime(ctx context.Context) bool
- func (repo *Repository) AllowsPulls() bool
- func (repo *Repository) AvatarLink(ctx context.Context) string
- func (repo *Repository) CanCreateBranch() bool
- func (repo *Repository) CanEnableEditor() bool
- func (repo *Repository) CanEnablePulls() bool
- func (repo *Repository) CanEnableTimetracker() bool
- func (repo *Repository) CloneLink() (cl *CloneLink)
- func (repo *Repository) ColorFormat(s fmt.State)
- func (repo *Repository) CommitLink(commitID string) (result string)
- func (repo *Repository) ComposeCompareURL(oldCommitID, newCommitID string) string
- func (repo *Repository) ComposeDocumentMetas() map[string]string
- func (repo *Repository) ComposeMetas() map[string]string
- func (repo *Repository) CustomAvatarRelativePath() string
- func (repo *Repository) DescriptionHTML(ctx context.Context) template.HTML
- func (repo *Repository) FullName() string
- func (repo *Repository) GetBaseRepo(ctx context.Context) (err error)
- func (repo *Repository) GetCommitsCountCacheKey(contextName string, isRef bool) string
- func (repo *Repository) GetOriginalURLHostname() string
- func (repo *Repository) GetTrustModel() TrustModelType
- func (repo *Repository) GetUnit(ctx context.Context, tp unit.Type) (*RepoUnit, error)
- func (repo *Repository) HTMLURL() string
- func (repo *Repository) HasWiki() bool
- func (repo *Repository) IsBeingCreated() bool
- func (repo *Repository) IsBeingMigrated() bool
- func (repo *Repository) IsBroken() bool
- func (repo *Repository) IsDependenciesEnabled(ctx context.Context) bool
- func (repo *Repository) IsGenerated() bool
- func (repo *Repository) IsOwnedBy(userID int64) bool
- func (repo *Repository) IsTimetrackerEnabled(ctx context.Context) bool
- func (repo *Repository) Link() string
- func (repo *Repository) LoadAttributes(ctx context.Context) error
- func (repo *Repository) LoadOwner(ctx context.Context) (err error)
- func (repo *Repository) LoadUnits(ctx context.Context) (err error)
- func (repo *Repository) MustGetUnit(ctx context.Context, tp unit.Type) *RepoUnit
- func (repo *Repository) MustOwner(ctx context.Context) *user_model.User
- func (repo *Repository) RelAvatarLink() string
- func (repo *Repository) RepoPath() string
- func (repo *Repository) SanitizedOriginalURL() string
- func (repo *Repository) TemplateRepo() *Repository
- func (repo *Repository) UnitEnabled(ctx context.Context, tp unit.Type) bool
- func (repo *Repository) WikiCloneLink() *CloneLink
- func (repo *Repository) WikiPath() string
- type RepositoryList
- func GetUserRepositories(opts *SearchRepoOptions) (RepositoryList, int64, error)
- func RepositoryListOfMap(repoMap map[int64]*Repository) RepositoryList
- func SearchRepository(ctx context.Context, opts *SearchRepoOptions) (RepositoryList, int64, error)
- func SearchRepositoryByCondition(ctx context.Context, opts *SearchRepoOptions, cond builder.Cond, ...) (RepositoryList, int64, error)
- func SearchRepositoryByName(ctx context.Context, opts *SearchRepoOptions) (RepositoryList, int64, error)
- type RepositoryStatus
- type SearchOrderBy
- type SearchRepoOptions
- type Star
- type Topic
- func AddTopic(repoID int64, topicName string) (*Topic, error)
- func DeleteTopic(repoID int64, topicName string) (*Topic, error)
- func FindTopics(opts *FindTopicOptions) ([]*Topic, int64, error)
- func GetRepoTopicByName(ctx context.Context, repoID int64, topicName string) (*Topic, error)
- func GetTopicByName(name string) (*Topic, error)
- type TrustModelType
- type UnitConfig
- type Upload
- type Watch
- type WatchMode
Constants ¶
const ( ArchiverGenerating = iota // the archiver is generating ArchiverReady // it's ready )
enumerate all repo archive statuses
const RepositoryListDefaultPageSize = 64
RepositoryListDefaultPageSize is the default number of repositories to load in memory when running administrative tasks on all (or almost all) of them. The number should be low enough to avoid filling up all RAM with repository data...
Variables ¶
var ErrMirrorNotExist = util.NewNotExistErrorf("Mirror does not exist")
ErrMirrorNotExist mirror does not exist error
var ErrPushMirrorNotExist = util.NewNotExistErrorf("PushMirror does not exist")
ErrPushMirrorNotExist mirror does not exist error
Functions ¶
func AccessibleRepoIDsQuery ¶ added in v1.17.0
func AccessibleRepoIDsQuery(user *user_model.User) *builder.Builder
AccessibleRepoIDsQuery queries accessible repository ids. Usable as a subquery wherever repo ids need to be filtered.
func AccessibleRepositoryCondition ¶ added in v1.17.0
AccessibleRepositoryCondition takes a user a returns a condition for checking if a repository is accessible
func AddReleaseAttachments ¶ added in v1.17.4
func AddReleaseAttachments(ctx context.Context, releaseID int64, attachmentUUIDs []string) (err error)
AddReleaseAttachments adds a release attachments
func AddRepoArchiver ¶
func AddRepoArchiver(ctx context.Context, archiver *RepoArchiver) error
AddRepoArchiver adds an archiver
func AttachmentRelativePath ¶
AttachmentRelativePath returns the relative path
func ChangeCollaborationAccessMode ¶ added in v1.17.0
func ChangeCollaborationAccessMode(ctx context.Context, repo *Repository, uid int64, mode perm.AccessMode) error
ChangeCollaborationAccessMode sets new access mode for the collaboration.
func ChangeRepositoryName ¶
func ChangeRepositoryName(doer *user_model.User, repo *Repository, newRepoName string) (err error)
ChangeRepositoryName changes all corresponding setting from old repository name to new one.
func CheckCreateRepository ¶
func CheckCreateRepository(doer, u *user_model.User, name string, overwriteOrAdopt bool) error
CheckCreateRepository check if could created a repository
func ComposeHTTPSCloneURL ¶
ComposeHTTPSCloneURL returns HTTPS clone URL based on given owner and repository name.
func CopyLanguageStat ¶
func CopyLanguageStat(originalRepo, destRepo *Repository) error
CopyLanguageStat Copy originalRepo language stat information to destRepo (use for forked repo)
func CountCollaborators ¶ added in v1.17.0
CountCollaborators returns total number of collaborators for a repository
func CountNullArchivedRepository ¶ added in v1.17.4
CountNullArchivedRepository counts the number of repositories with is_archived is null
func CountOrphanedAttachments ¶
CountOrphanedAttachments returns the number of bad attachments
func CountReleasesByRepoID ¶ added in v1.17.4
func CountReleasesByRepoID(repoID int64, opts FindReleasesOptions) (int64, error)
CountReleasesByRepoID returns a number of releases matching FindReleaseOptions and RepoID.
func CountRepositories ¶
func CountRepositories(ctx context.Context, opts CountRepositoryOptions) (int64, error)
CountRepositories returns number of repositories. Argument private only takes effect when it is false, set it true to count all repositories.
func CountTopics ¶
func CountTopics(opts *FindTopicOptions) (int64, error)
CountTopics counts the number of topics matching the FindTopicOptions
func DecrementRepoForkNum ¶ added in v1.17.0
DecrementRepoForkNum decrement repository fork number
func DeleteAllRepoArchives ¶
func DeleteAllRepoArchives() error
DeleteAllRepoArchives deletes all repo archives records
func DeleteAttachment ¶
func DeleteAttachment(a *Attachment, remove bool) error
DeleteAttachment deletes the given attachment and optionally the associated file.
func DeleteAttachments ¶
DeleteAttachments deletes the given attachments and optionally the associated files.
func DeleteAttachmentsByComment ¶
DeleteAttachmentsByComment deletes all attachments associated with the given comment.
func DeleteAttachmentsByIssue ¶
DeleteAttachmentsByIssue deletes all attachments associated with the given issue.
func DeleteAttachmentsByRelease ¶
DeleteAttachmentsByRelease deletes all attachments associated with the given release.
func DeleteMirrorByRepoID ¶
DeleteMirrorByRepoID deletes a mirror by repoID
func DeleteOrphanedAttachments ¶
DeleteOrphanedAttachments delete all bad attachments
func DeletePushMirrors ¶ added in v1.17.4
func DeletePushMirrors(ctx context.Context, opts PushMirrorOptions) error
func DeleteRedirect ¶
DeleteRedirect delete any redirect from the specified repo name to anything else
func DeleteReleaseByID ¶ added in v1.17.4
DeleteReleaseByID deletes a release from database by given ID.
func DeleteRepoArchiver ¶
func DeleteRepoArchiver(ctx context.Context, archiver *RepoArchiver) error
DeleteRepoArchiver delete archiver
func DeleteUploadByUUID ¶ added in v1.17.4
DeleteUploadByUUID deletes a upload by UUID
func DeleteUploads ¶ added in v1.17.4
DeleteUploads deletes multiple uploads
func ExistAttachmentsByUUID ¶
ExistAttachmentsByUUID returns true if attachment exists with the given UUID
func ExistsRepoArchiverWithStoragePath ¶ added in v1.17.4
ExistsRepoArchiverWithStoragePath checks if there is a RepoArchiver for a given storage path
func ExistsWithAvatarAtStoragePath ¶ added in v1.17.4
ExistsWithAvatarAtStoragePath returns true if there is a user with this Avatar
func FindReposMapByIDs ¶
func FindReposMapByIDs(repoIDs []int64, res map[int64]*Repository) error
FindReposMapByIDs find repos as map
func FindUserCodeAccessibleOwnerRepoIDs ¶ added in v1.17.4
func FindUserCodeAccessibleOwnerRepoIDs(ctx context.Context, ownerID int64, user *user_model.User) ([]int64, error)
FindUserCodeAccessibleOwnerRepoIDs finds all repository IDs for the given owner whose code the user can see.
func FindUserCodeAccessibleRepoIDs ¶ added in v1.17.0
FindUserCodeAccessibleRepoIDs finds all at Code level accessible repositories' ID by the user's id
func FixNullArchivedRepository ¶ added in v1.17.4
FixNullArchivedRepository sets is_archived to false where it is null
func GenerateTopics ¶
func GenerateTopics(ctx context.Context, templateRepo, generateRepo *Repository) error
GenerateTopics generates topics from a template repository
func GetIssuePosters ¶ added in v1.17.4
func GetIssuePosters(ctx context.Context, repo *Repository, isPull bool) ([]*user_model.User, error)
GetIssuePosters returns all users that have authored an issue/pull request for the given repository
func GetReleaseAttachments ¶ added in v1.17.4
GetReleaseAttachments retrieves the attachments for releases
func GetReleaseCountByRepoID ¶ added in v1.17.4
func GetReleaseCountByRepoID(ctx context.Context, repoID int64, opts FindReleasesOptions) (int64, error)
GetReleaseCountByRepoID returns the count of releases of repository
func GetRepoAssignees ¶ added in v1.17.0
func GetRepoAssignees(ctx context.Context, repo *Repository) (_ []*user_model.User, err error)
GetRepoAssignees returns all users that have write access and can be assigned to issues of the repository,
func GetRepoWatchers ¶
func GetRepoWatchers(repoID int64, opts db.ListOptions) ([]*user_model.User, error)
GetRepoWatchers returns range of users watching given repository.
func GetRepoWatchersIDs ¶
GetRepoWatchersIDs returns IDs of watchers for a given repo ID but avoids joining with `user` for performance reasons User permissions must be verified elsewhere if required
func GetRepositoriesMapByIDs ¶
func GetRepositoriesMapByIDs(ids []int64) (map[int64]*Repository, error)
GetRepositoriesMapByIDs returns the repositories by given id slice.
func GetReviewers ¶ added in v1.17.0
func GetReviewers(ctx context.Context, repo *Repository, doerID, posterID int64) ([]*user_model.User, error)
GetReviewers get all users can be requested to review: * for private repositories this returns all users that have read access or higher to the repository. * for public repositories this returns all users that have read access or higher to the repository, all repo watchers and all organization members. TODO: may be we should have a busy choice for users to block review request to them.
func GetStargazers ¶
func GetStargazers(repo *Repository, opts db.ListOptions) ([]*user_model.User, error)
GetStargazers returns the users that starred the repo.
func GetUnindexedRepos ¶
func GetUnindexedRepos(indexerType RepoIndexerType, maxRepoID int64, page, pageSize int) ([]int64, error)
GetUnindexedRepos returns repos which do not have an indexer status
func HasForkedRepo ¶
HasForkedRepo checks if given user has already forked a repository with given ID.
func IncrementRepoForkNum ¶ added in v1.17.0
IncrementRepoForkNum increment repository fork number
func InsertMirror ¶
InsertMirror inserts a mirror to database
func InsertPushMirror ¶
func InsertPushMirror(ctx context.Context, m *PushMirror) error
InsertPushMirror inserts a push-mirror to database
func IsCollaborator ¶ added in v1.17.0
IsCollaborator check if a user is a collaborator of a repository
func IsErrAttachmentNotExist ¶
IsErrAttachmentNotExist checks if an error is a ErrAttachmentNotExist.
func IsErrReachLimitOfRepo ¶
IsErrReachLimitOfRepo checks if an error is a ErrReachLimitOfRepo.
func IsErrRedirectNotExist ¶
IsErrRedirectNotExist check if an error is an ErrRepoRedirectNotExist.
func IsErrReleaseAlreadyExist ¶ added in v1.17.4
IsErrReleaseAlreadyExist checks if an error is a ErrReleaseAlreadyExist.
func IsErrReleaseNotExist ¶ added in v1.17.4
IsErrReleaseNotExist checks if an error is a ErrReleaseNotExist.
func IsErrRepoAlreadyExist ¶
IsErrRepoAlreadyExist checks if an error is a ErrRepoAlreadyExist.
func IsErrRepoFilesAlreadyExist ¶
IsErrRepoFilesAlreadyExist checks if an error is a ErrRepoAlreadyExist.
func IsErrRepoNotExist ¶
IsErrRepoNotExist checks if an error is a ErrRepoNotExist.
func IsErrTopicNotExist ¶
IsErrTopicNotExist checks if an error is an ErrTopicNotExist.
func IsErrUnitTypeNotExist ¶
IsErrUnitTypeNotExist checks if an error is a ErrUnitNotExist.
func IsErrUploadNotExist ¶ added in v1.17.4
IsErrUploadNotExist checks if an error is a ErrUploadNotExist.
func IsErrUserDoesNotHaveAccessToRepo ¶ added in v1.17.0
IsErrUserDoesNotHaveAccessToRepo checks if an error is a ErrRepoFileAlreadyExists.
func IsErrWikiAlreadyExist ¶ added in v1.17.4
IsErrWikiAlreadyExist checks if an error is an ErrWikiAlreadyExist.
func IsErrWikiInvalidFileName ¶ added in v1.17.4
IsErrWikiInvalidFileName checks if an error is an ErrWikiInvalidFileName.
func IsErrWikiReservedName ¶ added in v1.17.4
IsErrWikiReservedName checks if an error is an ErrWikiReservedName.
func IsOwnerMemberCollaborator ¶ added in v1.17.0
func IsOwnerMemberCollaborator(repo *Repository, userID int64) (bool, error)
IsOwnerMemberCollaborator checks if a provided user is the owner, a collaborator or a member of a team in a repository
func IsReleaseExist ¶ added in v1.17.4
IsReleaseExist returns true if release with given tag name already exists.
func IsRepositoryExist ¶
IsRepositoryExist returns true if the repository with given name under user has already existed.
func IsUsableRepoName ¶
IsUsableRepoName returns true when repository is usable
func IsWatchMode ¶
IsWatchMode Decodes watchability of WatchMode
func IsWatching ¶
IsWatching checks if user has watched given repository.
func LookupRedirect ¶
LookupRedirect look up if a repository has a redirect name
func MirrorsIterate ¶
MirrorsIterate iterates all mirror repositories.
func NewRedirect ¶
NewRedirect create a new repo redirect
func PushMirrorsIterate ¶
func PushMirrorsIterate(ctx context.Context, limit int, f func(idx int, bean interface{}) error) error
PushMirrorsIterate iterates all push-mirror repositories.
func PushUpdateDeleteTag ¶ added in v1.17.4
func PushUpdateDeleteTag(repo *Repository, tagName string) error
PushUpdateDeleteTag must be called for any push actions to delete tag
func PushUpdateDeleteTagsContext ¶ added in v1.17.4
func PushUpdateDeleteTagsContext(ctx context.Context, repo *Repository, tags []string) error
PushUpdateDeleteTagsContext updates a number of delete tags with context
func RemoveTopicsFromRepo ¶
RemoveTopicsFromRepo remove all topics from the repo and decrements respective topics repo count
func SanitizeAndValidateTopics ¶
SanitizeAndValidateTopics sanitizes and checks an array or topics
func SaveOrUpdateTag ¶ added in v1.17.4
func SaveOrUpdateTag(repo *Repository, newRel *Release) error
SaveOrUpdateTag must be called for any push actions to add tag
func SaveTopics ¶
SaveTopics save topics to a repository
func SearchRepositoryCondition ¶ added in v1.17.0
func SearchRepositoryCondition(opts *SearchRepoOptions) builder.Cond
SearchRepositoryCondition creates a query condition according search repository options
func SearchRepositoryIDs ¶ added in v1.17.0
func SearchRepositoryIDs(opts *SearchRepoOptions) ([]int64, int64, error)
SearchRepositoryIDs takes keyword and part of repository name to search, it returns results in given range and number of total results.
func SearchRepositoryIDsByCondition ¶ added in v1.17.4
SearchRepositoryIDsByCondition search repository IDs by given condition.
func SetArchiveRepoState ¶
func SetArchiveRepoState(repo *Repository, isArchived bool) (err error)
SetArchiveRepoState sets if a repo is archived
func SortReleases ¶ added in v1.17.4
func SortReleases(rels []*Release)
SortReleases sorts releases by number of commits and created time.
func TouchMirror ¶ added in v1.16.6
TouchMirror updates the mirror updatedUnix
func UpdateAttachment ¶
func UpdateAttachment(ctx context.Context, atta *Attachment) error
UpdateAttachment updates the given attachment in database
func UpdateAttachmentByUUID ¶
func UpdateAttachmentByUUID(ctx context.Context, attach *Attachment, cols ...string) error
UpdateAttachmentByUUID Updates attachment via uuid
func UpdateDefaultBranch ¶
func UpdateDefaultBranch(repo *Repository) error
UpdateDefaultBranch updates the default branch
func UpdateIndexerStatus ¶
func UpdateIndexerStatus(ctx context.Context, repo *Repository, indexerType RepoIndexerType, sha string) error
UpdateIndexerStatus updates indexer status
func UpdateLanguageStats ¶
func UpdateLanguageStats(repo *Repository, commitID string, stats map[string]int64) error
UpdateLanguageStats updates the language statistics for repository
func UpdateMirror ¶
UpdateMirror updates the mirror
func UpdatePushMirror ¶
func UpdatePushMirror(ctx context.Context, m *PushMirror) error
UpdatePushMirror updates the push-mirror
func UpdateRelease ¶ added in v1.17.4
UpdateRelease updates all columns of a release
func UpdateReleasesMigrationsByType ¶ added in v1.17.4
func UpdateReleasesMigrationsByType(gitServiceType structs.GitServiceType, originalAuthorID string, posterID int64) error
UpdateReleasesMigrationsByType updates all migrated repositories' releases from gitServiceType to replace originalAuthorID to posterID
func UpdateRepoArchiverStatus ¶
func UpdateRepoArchiverStatus(ctx context.Context, archiver *RepoArchiver) error
UpdateRepoArchiverStatus updates archiver's status
func UpdateRepoIssueNumbers ¶ added in v1.17.0
UpdateRepoIssueNumbers updates one of a repositories amount of (open|closed) (issues|PRs) with the current count
func UpdateRepoSize ¶ added in v1.17.0
UpdateRepoSize updates the repository size, calculating it using getDirectorySize
func UpdateRepoUnit ¶
UpdateRepoUnit updates the provided repo unit
func UpdateRepositoryCols ¶
func UpdateRepositoryCols(ctx context.Context, repo *Repository, cols ...string) error
UpdateRepositoryCols updates repository's columns
func UpdateRepositoryOwnerNames ¶
UpdateRepositoryOwnerNames updates repository owner_names (this should only be used when the ownerName has changed case)
func UpdateRepositoryUnits ¶
func UpdateRepositoryUnits(repo *Repository, units []RepoUnit, deleteUnitTypes []unit.Type) (err error)
UpdateRepositoryUnits updates a repository's units
func UpdateRepositoryUpdatedTime ¶
UpdateRepositoryUpdatedTime updates a repository's updated time
func UploadLocalPath ¶ added in v1.17.4
UploadLocalPath returns where uploads is stored in local file system based on given UUID.
func UserAccessRepoCond ¶ added in v1.17.0
UserAccessRepoCond returns a condition for selecting all repositories a user has unit independent access to
func UserAssignedRepoCond ¶ added in v1.17.0
UserAssignedRepoCond return user as assignee repositories list
func UserCollaborationRepoCond ¶ added in v1.17.0
userCollaborationRepoCond returns a condition for selecting all repositories a user is collaborator in
func UserCreateIssueRepoCond ¶ added in v1.17.0
UserCreateIssueRepoCond return user created issues repositories list
func UserMentionedRepoCond ¶ added in v1.17.0
UserMentionedRepoCond return user metinoed repositories list
func UserOrgPublicUnitRepoCond ¶ added in v1.17.0
UserOrgPublicUnitRepoCond returns the condition that one user could access all public repositories in the special organization
func UserOrgTeamRepoCond ¶ added in v1.17.0
UserOrgTeamRepoCond selects repos that the given user has access to through team membership
func UserOrgUnitRepoCond ¶ added in v1.17.0
UserOrgUnitRepoCond selects repos that the given user has access to through org and the special unit
func UserOwnedRepoCond ¶ added in v1.17.0
UserOwnedRepoCond returns user ownered repositories
func ValidateTopic ¶
ValidateTopic checks a topic by length and match pattern rules
func WatchIfAuto ¶
WatchIfAuto subscribes to repo if AutoWatchOnChanges is set
func WatchRepoMode ¶
WatchRepoMode watch repository in specific mode.
Types ¶
type Attachment ¶
type Attachment struct { ID int64 `xorm:"pk autoincr"` UUID string `xorm:"uuid UNIQUE"` RepoID int64 `xorm:"INDEX"` // this should not be zero IssueID int64 `xorm:"INDEX"` // maybe zero when creating ReleaseID int64 `xorm:"INDEX"` // maybe zero when creating UploaderID int64 `xorm:"INDEX DEFAULT 0"` // Notice: will be zero before this column added CommentID int64 Name string DownloadCount int64 `xorm:"DEFAULT 0"` Size int64 `xorm:"DEFAULT 0"` CreatedUnix timeutil.TimeStamp `xorm:"created"` }
Attachment represent a attachment of issue/comment/release.
func GetAttachmentByID ¶
func GetAttachmentByID(ctx context.Context, id int64) (*Attachment, error)
GetAttachmentByID returns attachment by given id
func GetAttachmentByReleaseIDFileName ¶
func GetAttachmentByReleaseIDFileName(ctx context.Context, releaseID int64, fileName string) (*Attachment, error)
GetAttachmentByReleaseIDFileName returns attachment by given releaseId and fileName.
func GetAttachmentByUUID ¶
func GetAttachmentByUUID(ctx context.Context, uuid string) (*Attachment, error)
GetAttachmentByUUID returns attachment by given UUID.
func GetAttachmentsByCommentID ¶
func GetAttachmentsByCommentID(ctx context.Context, commentID int64) ([]*Attachment, error)
GetAttachmentsByCommentID returns all attachments if comment by given ID.
func GetAttachmentsByIssueID ¶
func GetAttachmentsByIssueID(ctx context.Context, issueID int64) ([]*Attachment, error)
GetAttachmentsByIssueID returns all attachments of an issue.
func GetAttachmentsByIssueIDImagesLatest ¶ added in v1.19.0
func GetAttachmentsByIssueIDImagesLatest(ctx context.Context, issueID int64) ([]*Attachment, error)
GetAttachmentsByIssueIDImagesLatest returns the latest image attachments of an issue.
func GetAttachmentsByUUIDs ¶
func GetAttachmentsByUUIDs(ctx context.Context, uuids []string) ([]*Attachment, error)
GetAttachmentsByUUIDs returns attachment by given UUID list.
func (*Attachment) DownloadURL ¶
func (a *Attachment) DownloadURL() string
DownloadURL returns the download url of the attached file
func (*Attachment) IncreaseDownloadCount ¶
func (a *Attachment) IncreaseDownloadCount() error
IncreaseDownloadCount is update download count + 1
func (*Attachment) RelativePath ¶
func (a *Attachment) RelativePath() string
RelativePath returns the relative path of the attachment
type Collaboration ¶ added in v1.17.0
type Collaboration struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"UNIQUE(s) INDEX NOT NULL"` UserID int64 `xorm:"UNIQUE(s) INDEX NOT NULL"` Mode perm.AccessMode `xorm:"DEFAULT 2 NOT NULL"` CreatedUnix timeutil.TimeStamp `xorm:"INDEX created"` UpdatedUnix timeutil.TimeStamp `xorm:"INDEX updated"` }
Collaboration represent the relation between an individual and a repository.
func GetCollaboration ¶ added in v1.17.0
func GetCollaboration(ctx context.Context, repoID, uid int64) (*Collaboration, error)
GetCollaboration get collaboration for a repository id with a user id
type Collaborator ¶ added in v1.17.0
type Collaborator struct { *user_model.User Collaboration *Collaboration }
Collaborator represents a user with collaboration details.
func GetCollaborators ¶ added in v1.17.0
func GetCollaborators(ctx context.Context, repoID int64, listOptions db.ListOptions) ([]*Collaborator, error)
GetCollaborators returns the collaborators for a repository
type CountRepositoryOptions ¶ added in v1.17.0
type CountRepositoryOptions struct { OwnerID int64 Private util.OptionalBool }
type ErrAttachmentNotExist ¶
ErrAttachmentNotExist represents a "AttachmentNotExist" kind of error.
func (ErrAttachmentNotExist) Error ¶
func (err ErrAttachmentNotExist) Error() string
func (ErrAttachmentNotExist) Unwrap ¶ added in v1.17.4
func (err ErrAttachmentNotExist) Unwrap() error
type ErrReachLimitOfRepo ¶
type ErrReachLimitOfRepo struct {
Limit int
}
ErrReachLimitOfRepo represents a "ReachLimitOfRepo" kind of error.
func (ErrReachLimitOfRepo) Error ¶
func (err ErrReachLimitOfRepo) Error() string
func (ErrReachLimitOfRepo) Unwrap ¶ added in v1.17.4
func (err ErrReachLimitOfRepo) Unwrap() error
type ErrRedirectNotExist ¶
ErrRedirectNotExist represents a "RedirectNotExist" kind of error.
func (ErrRedirectNotExist) Error ¶
func (err ErrRedirectNotExist) Error() string
func (ErrRedirectNotExist) Unwrap ¶ added in v1.17.4
func (err ErrRedirectNotExist) Unwrap() error
type ErrReleaseAlreadyExist ¶ added in v1.17.4
type ErrReleaseAlreadyExist struct {
TagName string
}
ErrReleaseAlreadyExist represents a "ReleaseAlreadyExist" kind of error.
func (ErrReleaseAlreadyExist) Error ¶ added in v1.17.4
func (err ErrReleaseAlreadyExist) Error() string
func (ErrReleaseAlreadyExist) Unwrap ¶ added in v1.17.4
func (err ErrReleaseAlreadyExist) Unwrap() error
type ErrReleaseNotExist ¶ added in v1.17.4
ErrReleaseNotExist represents a "ReleaseNotExist" kind of error.
func (ErrReleaseNotExist) Error ¶ added in v1.17.4
func (err ErrReleaseNotExist) Error() string
func (ErrReleaseNotExist) Unwrap ¶ added in v1.17.4
func (err ErrReleaseNotExist) Unwrap() error
type ErrRepoAlreadyExist ¶
ErrRepoAlreadyExist represents a "RepoAlreadyExist" kind of error.
func (ErrRepoAlreadyExist) Error ¶
func (err ErrRepoAlreadyExist) Error() string
func (ErrRepoAlreadyExist) Unwrap ¶ added in v1.17.4
func (err ErrRepoAlreadyExist) Unwrap() error
type ErrRepoFilesAlreadyExist ¶
ErrRepoFilesAlreadyExist represents a "RepoFilesAlreadyExist" kind of error.
func (ErrRepoFilesAlreadyExist) Error ¶
func (err ErrRepoFilesAlreadyExist) Error() string
func (ErrRepoFilesAlreadyExist) Unwrap ¶ added in v1.17.4
func (err ErrRepoFilesAlreadyExist) Unwrap() error
type ErrRepoNotExist ¶
ErrRepoNotExist represents a "RepoNotExist" kind of error.
func (ErrRepoNotExist) Error ¶
func (err ErrRepoNotExist) Error() string
func (ErrRepoNotExist) Unwrap ¶ added in v1.17.4
func (err ErrRepoNotExist) Unwrap() error
Unwrap unwraps this error as a ErrNotExist error
type ErrTopicNotExist ¶
type ErrTopicNotExist struct {
Name string
}
ErrTopicNotExist represents an error that a topic is not exist
func (ErrTopicNotExist) Error ¶
func (err ErrTopicNotExist) Error() string
Error implements error interface
func (ErrTopicNotExist) Unwrap ¶ added in v1.17.4
func (err ErrTopicNotExist) Unwrap() error
type ErrUnitTypeNotExist ¶
ErrUnitTypeNotExist represents a "UnitTypeNotExist" kind of error.
func (ErrUnitTypeNotExist) Error ¶
func (err ErrUnitTypeNotExist) Error() string
func (ErrUnitTypeNotExist) Unwrap ¶ added in v1.17.4
func (err ErrUnitTypeNotExist) Unwrap() error
type ErrUploadNotExist ¶ added in v1.17.4
ErrUploadNotExist represents a "UploadNotExist" kind of error.
func (ErrUploadNotExist) Error ¶ added in v1.17.4
func (err ErrUploadNotExist) Error() string
func (ErrUploadNotExist) Unwrap ¶ added in v1.17.4
func (err ErrUploadNotExist) Unwrap() error
type ErrUserDoesNotHaveAccessToRepo ¶ added in v1.17.0
ErrUserDoesNotHaveAccessToRepo represents an error where the user doesn't has access to a given repo.
func (ErrUserDoesNotHaveAccessToRepo) Error ¶ added in v1.17.0
func (err ErrUserDoesNotHaveAccessToRepo) Error() string
func (ErrUserDoesNotHaveAccessToRepo) Unwrap ¶ added in v1.17.4
func (err ErrUserDoesNotHaveAccessToRepo) Unwrap() error
type ErrWikiAlreadyExist ¶ added in v1.17.4
type ErrWikiAlreadyExist struct {
Title string
}
ErrWikiAlreadyExist represents a "WikiAlreadyExist" kind of error.
func (ErrWikiAlreadyExist) Error ¶ added in v1.17.4
func (err ErrWikiAlreadyExist) Error() string
func (ErrWikiAlreadyExist) Unwrap ¶ added in v1.17.4
func (err ErrWikiAlreadyExist) Unwrap() error
type ErrWikiInvalidFileName ¶ added in v1.17.4
type ErrWikiInvalidFileName struct {
FileName string
}
ErrWikiInvalidFileName represents an invalid wiki file name.
func (ErrWikiInvalidFileName) Error ¶ added in v1.17.4
func (err ErrWikiInvalidFileName) Error() string
func (ErrWikiInvalidFileName) Unwrap ¶ added in v1.17.4
func (err ErrWikiInvalidFileName) Unwrap() error
type ErrWikiReservedName ¶ added in v1.17.4
type ErrWikiReservedName struct {
Title string
}
ErrWikiReservedName represents a reserved name error.
func (ErrWikiReservedName) Error ¶ added in v1.17.4
func (err ErrWikiReservedName) Error() string
func (ErrWikiReservedName) Unwrap ¶ added in v1.17.4
func (err ErrWikiReservedName) Unwrap() error
type ExternalTrackerConfig ¶
type ExternalTrackerConfig struct { ExternalTrackerURL string ExternalTrackerFormat string ExternalTrackerStyle string ExternalTrackerRegexpPattern string }
ExternalTrackerConfig describes external tracker config
func (*ExternalTrackerConfig) FromDB ¶
func (cfg *ExternalTrackerConfig) FromDB(bs []byte) error
FromDB fills up a ExternalTrackerConfig from serialized format.
func (*ExternalTrackerConfig) ToDB ¶
func (cfg *ExternalTrackerConfig) ToDB() ([]byte, error)
ToDB exports a ExternalTrackerConfig to a serialized format.
type ExternalWikiConfig ¶
type ExternalWikiConfig struct {
ExternalWikiURL string
}
ExternalWikiConfig describes external wiki config
func (*ExternalWikiConfig) FromDB ¶
func (cfg *ExternalWikiConfig) FromDB(bs []byte) error
FromDB fills up a ExternalWikiConfig from serialized format.
func (*ExternalWikiConfig) ToDB ¶
func (cfg *ExternalWikiConfig) ToDB() ([]byte, error)
ToDB exports a ExternalWikiConfig to a serialized format.
type FindReleasesOptions ¶ added in v1.17.4
type FindReleasesOptions struct { db.ListOptions IncludeDrafts bool IncludeTags bool IsPreRelease util.OptionalBool IsDraft util.OptionalBool TagNames []string HasSha1 util.OptionalBool // useful to find draft releases which are created with existing tags }
FindReleasesOptions describes the conditions to Find releases
type FindRepoArchiversOption ¶
type FindRepoArchiversOption struct { db.ListOptions OlderThan time.Duration }
FindRepoArchiversOption represents an archiver options
type FindTopicOptions ¶
type FindTopicOptions struct { db.ListOptions RepoID int64 Keyword string }
FindTopicOptions represents the options when fdin topics
type IssuesConfig ¶
type IssuesConfig struct { EnableTimetracker bool AllowOnlyContributorsToTrackTime bool EnableDependencies bool }
IssuesConfig describes issues config
func (*IssuesConfig) FromDB ¶
func (cfg *IssuesConfig) FromDB(bs []byte) error
FromDB fills up a IssuesConfig from serialized format.
func (*IssuesConfig) ToDB ¶
func (cfg *IssuesConfig) ToDB() ([]byte, error)
ToDB exports a IssuesConfig to a serialized format.
type LanguageStat ¶
type LanguageStat struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"UNIQUE(s) INDEX NOT NULL"` CommitID string IsPrimary bool Language string `xorm:"VARCHAR(50) UNIQUE(s) INDEX NOT NULL"` Percentage float32 `xorm:"-"` Size int64 `xorm:"NOT NULL DEFAULT 0"` Color string `xorm:"-"` CreatedUnix timeutil.TimeStamp `xorm:"INDEX CREATED"` }
LanguageStat describes language statistics of a repository
type LanguageStatList ¶
type LanguageStatList []*LanguageStat
LanguageStatList defines a list of language statistics
func GetLanguageStats ¶
func GetLanguageStats(ctx context.Context, repo *Repository) (LanguageStatList, error)
GetLanguageStats returns the language statistics for a repository
func GetTopLanguageStats ¶
func GetTopLanguageStats(repo *Repository, limit int) (LanguageStatList, error)
GetTopLanguageStats returns the top language statistics for a repository
func (LanguageStatList) LoadAttributes ¶
func (stats LanguageStatList) LoadAttributes()
LoadAttributes loads attributes
type MergeStyle ¶
type MergeStyle string
MergeStyle represents the approach to merge commits into base branch.
const ( // MergeStyleMerge create merge commit MergeStyleMerge MergeStyle = "merge" // MergeStyleRebase rebase before merging MergeStyleRebase MergeStyle = "rebase" // MergeStyleRebaseMerge rebase before merging with merge commit (--no-ff) MergeStyleRebaseMerge MergeStyle = "rebase-merge" // MergeStyleSquash squash commits into single commit before merging MergeStyleSquash MergeStyle = "squash" // MergeStyleManuallyMerged pr has been merged manually, just mark it as merged directly MergeStyleManuallyMerged MergeStyle = "manually-merged" // MergeStyleRebaseUpdate not a merge style, used to update pull head by rebase MergeStyleRebaseUpdate MergeStyle = "rebase-update-only" )
type Mirror ¶
type Mirror struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"INDEX"` Repo *Repository `xorm:"-"` Interval time.Duration EnablePrune bool `xorm:"NOT NULL DEFAULT true"` UpdatedUnix timeutil.TimeStamp `xorm:"INDEX"` NextUpdateUnix timeutil.TimeStamp `xorm:"INDEX"` LFS bool `xorm:"lfs_enabled NOT NULL DEFAULT false"` LFSEndpoint string `xorm:"lfs_endpoint TEXT"` Address string `xorm:"-"` }
Mirror represents mirror information of a repository.
func GetMirrorByRepoID ¶
GetMirrorByRepoID returns mirror information of a repository.
func (*Mirror) BeforeInsert ¶
func (m *Mirror) BeforeInsert()
BeforeInsert will be invoked by XORM before inserting a record
func (*Mirror) GetRemoteName ¶
GetRemoteName returns the name of the remote.
func (*Mirror) GetRepository ¶
func (m *Mirror) GetRepository() *Repository
GetRepository returns the repository.
func (*Mirror) ScheduleNextUpdate ¶
func (m *Mirror) ScheduleNextUpdate()
ScheduleNextUpdate calculates and sets next update time.
type PullRequestsConfig ¶
type PullRequestsConfig struct { IgnoreWhitespaceConflicts bool AllowMerge bool AllowRebase bool AllowRebaseMerge bool AllowSquash bool AllowManualMerge bool AutodetectManualMerge bool AllowRebaseUpdate bool DefaultDeleteBranchAfterMerge bool DefaultMergeStyle MergeStyle DefaultAllowMaintainerEdit bool }
PullRequestsConfig describes pull requests config
func (*PullRequestsConfig) FromDB ¶
func (cfg *PullRequestsConfig) FromDB(bs []byte) error
FromDB fills up a PullRequestsConfig from serialized format.
func (*PullRequestsConfig) GetDefaultMergeStyle ¶
func (cfg *PullRequestsConfig) GetDefaultMergeStyle() MergeStyle
GetDefaultMergeStyle returns the default merge style for this pull request
func (*PullRequestsConfig) IsMergeStyleAllowed ¶
func (cfg *PullRequestsConfig) IsMergeStyleAllowed(mergeStyle MergeStyle) bool
IsMergeStyleAllowed returns if merge style is allowed
func (*PullRequestsConfig) ToDB ¶
func (cfg *PullRequestsConfig) ToDB() ([]byte, error)
ToDB exports a PullRequestsConfig to a serialized format.
type PushMirror ¶
type PushMirror struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"INDEX"` Repo *Repository `xorm:"-"` RemoteName string SyncOnCommit bool `xorm:"NOT NULL DEFAULT true"` Interval time.Duration CreatedUnix timeutil.TimeStamp `xorm:"created"` LastUpdateUnix timeutil.TimeStamp `xorm:"INDEX last_update"` LastError string `xorm:"text"` }
PushMirror represents mirror information of a repository.
func GetPushMirror ¶ added in v1.17.4
func GetPushMirror(ctx context.Context, opts PushMirrorOptions) (*PushMirror, error)
func GetPushMirrorsByRepoID ¶
func GetPushMirrorsByRepoID(ctx context.Context, repoID int64, listOptions db.ListOptions) ([]*PushMirror, int64, error)
GetPushMirrorsByRepoID returns push-mirror information of a repository.
func GetPushMirrorsSyncedOnCommit ¶ added in v1.17.4
func GetPushMirrorsSyncedOnCommit(ctx context.Context, repoID int64) ([]*PushMirror, error)
GetPushMirrorsSyncedOnCommit returns push-mirrors for this repo that should be updated by new commits
func (*PushMirror) GetRemoteName ¶
func (m *PushMirror) GetRemoteName() string
GetRemoteName returns the name of the remote.
func (*PushMirror) GetRepository ¶
func (m *PushMirror) GetRepository() *Repository
GetRepository returns the path of the repository.
type PushMirrorOptions ¶ added in v1.17.4
type Redirect ¶
type Redirect struct { ID int64 `xorm:"pk autoincr"` OwnerID int64 `xorm:"UNIQUE(s)"` LowerName string `xorm:"UNIQUE(s) INDEX NOT NULL"` RedirectRepoID int64 // repoID to redirect to }
Redirect represents that a repo name should be redirected to another
type Release ¶ added in v1.17.4
type Release struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"INDEX UNIQUE(n)"` Repo *Repository `xorm:"-"` PublisherID int64 `xorm:"INDEX"` Publisher *user_model.User `xorm:"-"` TagName string `xorm:"INDEX UNIQUE(n)"` OriginalAuthor string OriginalAuthorID int64 `xorm:"index"` LowerTagName string Target string Title string Sha1 string `xorm:"VARCHAR(40)"` NumCommits int64 NumCommitsBehind int64 `xorm:"-"` Note string `xorm:"TEXT"` RenderedNote string `xorm:"-"` IsDraft bool `xorm:"NOT NULL DEFAULT false"` IsPrerelease bool `xorm:"NOT NULL DEFAULT false"` IsTag bool `xorm:"NOT NULL DEFAULT false"` Attachments []*Attachment `xorm:"-"` CreatedUnix timeutil.TimeStamp `xorm:"INDEX"` }
Release represents a release of repository.
func GetLatestReleaseByRepoID ¶ added in v1.17.4
GetLatestReleaseByRepoID returns the latest release for a repository
func GetRelease ¶ added in v1.17.4
GetRelease returns release by given ID.
func GetReleaseByID ¶ added in v1.17.4
GetReleaseByID returns release with given ID.
func GetReleasesByRepoID ¶ added in v1.17.4
func GetReleasesByRepoID(ctx context.Context, repoID int64, opts FindReleasesOptions) ([]*Release, error)
GetReleasesByRepoID returns a list of releases of repository.
func GetReleasesByRepoIDAndNames ¶ added in v1.17.4
func GetReleasesByRepoIDAndNames(ctx context.Context, repoID int64, tagNames []string) (rels []*Release, err error)
GetReleasesByRepoIDAndNames returns a list of releases of repository according repoID and tagNames.
func (*Release) APIURL ¶ added in v1.17.4
APIURL the api url for a release. release must have attributes loaded
func (*Release) GetExternalID ¶ added in v1.17.4
ExternalID ExternalUserRemappable interface
func (*Release) GetExternalName ¶ added in v1.17.4
ExternalName ExternalUserRemappable interface
func (*Release) HTMLURL ¶ added in v1.17.4
HTMLURL the url for a release on the web UI. release must have attributes loaded
func (*Release) Link ¶ added in v1.19.0
Link the relative url for a release on the web UI. release must have attributes loaded
func (*Release) LoadAttributes ¶ added in v1.17.4
LoadAttributes load repo and publisher attributes for a release
func (*Release) RemapExternalUser ¶ added in v1.17.4
RemapExternalUser ExternalUserRemappable interface
type RepoArchiver ¶
type RepoArchiver struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"index unique(s)"` Type git.ArchiveType `xorm:"unique(s)"` Status ArchiverStatus CommitID string `xorm:"VARCHAR(40) unique(s)"` CreatedUnix timeutil.TimeStamp `xorm:"INDEX NOT NULL created"` }
RepoArchiver represents all archivers
func FindRepoArchives ¶
func FindRepoArchives(opts FindRepoArchiversOption) ([]*RepoArchiver, error)
FindRepoArchives find repo archivers
func GetRepoArchiver ¶
func GetRepoArchiver(ctx context.Context, repoID int64, tp git.ArchiveType, commitID string) (*RepoArchiver, error)
GetRepoArchiver get an archiver
func (*RepoArchiver) RelativePath ¶
func (archiver *RepoArchiver) RelativePath() string
RelativePath returns the archive path relative to the archive storage root.
type RepoIndexerStatus ¶
type RepoIndexerStatus struct { ID int64 `xorm:"pk autoincr"` RepoID int64 `xorm:"INDEX(s)"` CommitSha string `xorm:"VARCHAR(40)"` IndexerType RepoIndexerType `xorm:"INDEX(s) NOT NULL DEFAULT 0"` }
RepoIndexerStatus status of a repo's entry in the repo indexer For now, implicitly refers to default branch
func GetIndexerStatus ¶
func GetIndexerStatus(ctx context.Context, repo *Repository, indexerType RepoIndexerType) (*RepoIndexerStatus, error)
GetIndexerStatus loads repo codes indxer status
type RepoIndexerType ¶
type RepoIndexerType int //revive:disable-line:exported
RepoIndexerType specifies the repository indexer type
const ( // RepoIndexerTypeCode code indexer RepoIndexerTypeCode RepoIndexerType = iota // 0 // RepoIndexerTypeStats repository stats indexer RepoIndexerTypeStats // 1 )
type RepoUnit ¶
type RepoUnit struct { ID int64 RepoID int64 `xorm:"INDEX(s)"` Type unit.Type `xorm:"INDEX(s)"` Config convert.Conversion `xorm:"TEXT"` CreatedUnix timeutil.TimeStamp `xorm:"INDEX CREATED"` }
RepoUnit describes all units of a repository
func (*RepoUnit) BeforeSet ¶
BeforeSet is invoked from XORM before setting the value of a field of this object.
func (*RepoUnit) CodeConfig ¶
func (r *RepoUnit) CodeConfig() *UnitConfig
CodeConfig returns config for unit.TypeCode
func (*RepoUnit) ExternalTrackerConfig ¶
func (r *RepoUnit) ExternalTrackerConfig() *ExternalTrackerConfig
ExternalTrackerConfig returns config for unit.TypeExternalTracker
func (*RepoUnit) ExternalWikiConfig ¶
func (r *RepoUnit) ExternalWikiConfig() *ExternalWikiConfig
ExternalWikiConfig returns config for unit.TypeExternalWiki
func (*RepoUnit) IssuesConfig ¶
func (r *RepoUnit) IssuesConfig() *IssuesConfig
IssuesConfig returns config for unit.TypeIssues
func (*RepoUnit) PullRequestsConfig ¶
func (r *RepoUnit) PullRequestsConfig() *PullRequestsConfig
PullRequestsConfig returns config for unit.TypePullRequests
func (*RepoUnit) ReleasesConfig ¶
func (r *RepoUnit) ReleasesConfig() *UnitConfig
ReleasesConfig returns config for unit.TypeReleases
type Repository ¶
type Repository struct { ID int64 `xorm:"pk autoincr"` OwnerID int64 `xorm:"UNIQUE(s) index"` OwnerName string Owner *user_model.User `xorm:"-"` LowerName string `xorm:"UNIQUE(s) INDEX NOT NULL"` Name string `xorm:"INDEX NOT NULL"` Description string `xorm:"TEXT"` Website string `xorm:"VARCHAR(2048)"` OriginalServiceType api.GitServiceType `xorm:"index"` OriginalURL string `xorm:"VARCHAR(2048)"` DefaultBranch string NumWatches int NumStars int NumForks int NumIssues int NumClosedIssues int NumOpenIssues int `xorm:"-"` NumPulls int NumClosedPulls int NumOpenPulls int `xorm:"-"` NumMilestones int `xorm:"NOT NULL DEFAULT 0"` NumClosedMilestones int `xorm:"NOT NULL DEFAULT 0"` NumOpenMilestones int `xorm:"-"` NumProjects int `xorm:"NOT NULL DEFAULT 0"` NumClosedProjects int `xorm:"NOT NULL DEFAULT 0"` NumOpenProjects int `xorm:"-"` NumActionRuns int `xorm:"NOT NULL DEFAULT 0"` NumClosedActionRuns int `xorm:"NOT NULL DEFAULT 0"` NumOpenActionRuns int `xorm:"-"` IsPrivate bool `xorm:"INDEX"` IsEmpty bool `xorm:"INDEX"` IsArchived bool `xorm:"INDEX"` IsMirror bool `xorm:"INDEX"` *Mirror `xorm:"-"` Status RepositoryStatus `xorm:"NOT NULL DEFAULT 0"` RenderingMetas map[string]string `xorm:"-"` DocumentRenderingMetas map[string]string `xorm:"-"` Units []*RepoUnit `xorm:"-"` PrimaryLanguage *LanguageStat `xorm:"-"` IsFork bool `xorm:"INDEX NOT NULL DEFAULT false"` ForkID int64 `xorm:"INDEX"` BaseRepo *Repository `xorm:"-"` IsTemplate bool `xorm:"INDEX NOT NULL DEFAULT false"` TemplateID int64 `xorm:"INDEX"` Size int64 `xorm:"NOT NULL DEFAULT 0"` CodeIndexerStatus *RepoIndexerStatus `xorm:"-"` StatsIndexerStatus *RepoIndexerStatus `xorm:"-"` IsFsckEnabled bool `xorm:"NOT NULL DEFAULT true"` CloseIssuesViaCommitInAnyBranch bool `xorm:"NOT NULL DEFAULT false"` Topics []string `xorm:"TEXT JSON"` TrustModel TrustModelType // Avatar: ID(10-20)-md5(32) - must fit into 64 symbols Avatar string `xorm:"VARCHAR(64)"` CreatedUnix timeutil.TimeStamp `xorm:"INDEX created"` UpdatedUnix timeutil.TimeStamp `xorm:"INDEX updated"` }
Repository represents a git repository.
func FindUserOrgForks ¶ added in v1.17.0
func FindUserOrgForks(ctx context.Context, repoID, userID int64) ([]*Repository, error)
FindUserOrgForks returns the forked repositories for one user from a repository
func GetForkedRepo ¶
func GetForkedRepo(ownerID, repoID int64) *Repository
GetForkedRepo checks if given user has already forked a repository with given ID.
func GetForks ¶
func GetForks(repo *Repository, listOptions db.ListOptions) ([]*Repository, error)
GetForks returns all the forks of the repository
func GetForksByUserAndOrgs ¶ added in v1.17.0
func GetForksByUserAndOrgs(ctx context.Context, user *user_model.User, repo *Repository) ([]*Repository, error)
GetForksByUserAndOrgs return forked repos of the user and owned orgs
func GetRepositoriesByForkID ¶
func GetRepositoriesByForkID(ctx context.Context, forkID int64) ([]*Repository, error)
GetRepositoriesByForkID returns all repositories with given fork ID.
func GetRepositoryByID ¶
func GetRepositoryByID(ctx context.Context, id int64) (*Repository, error)
GetRepositoryByID returns the repository by given id if exists.
func GetRepositoryByName ¶
func GetRepositoryByName(ownerID int64, name string) (*Repository, error)
GetRepositoryByName returns the repository by given name under user if exists.
func GetRepositoryByOwnerAndName ¶
func GetRepositoryByOwnerAndName(ctx context.Context, ownerName, repoName string) (*Repository, error)
GetRepositoryByOwnerAndName returns the repository by given owner name and repo name
func GetStarredRepos ¶ added in v1.17.0
func GetStarredRepos(ctx context.Context, userID int64, private bool, listOptions db.ListOptions) ([]*Repository, error)
GetStarredRepos returns the repos starred by a particular user
func GetTemplateRepo ¶
func GetTemplateRepo(ctx context.Context, repo *Repository) (*Repository, error)
GetTemplateRepo populates repo.TemplateRepo for a generated repository and returns an error on failure (NOTE: no error is returned for non-generated repositories, and TemplateRepo will be left untouched)
func GetUserFork ¶
func GetUserFork(ctx context.Context, repoID, userID int64) (*Repository, error)
GetUserFork return user forked repository from this repository, if not forked return nil
func GetWatchedRepos ¶ added in v1.17.0
func GetWatchedRepos(ctx context.Context, userID int64, private bool, listOptions db.ListOptions) ([]*Repository, int64, error)
GetWatchedRepos returns the repos watched by a particular user
func ValuesRepository ¶ added in v1.17.0
func ValuesRepository(m map[int64]*Repository) []*Repository
ValuesRepository converts a repository map to a list FIXME: Remove in favor of maps.values when MIN_GO_VERSION >= 1.18
func (*Repository) APIURL ¶
func (repo *Repository) APIURL() string
APIURL returns the repository API URL
func (*Repository) AfterLoad ¶
func (repo *Repository) AfterLoad()
AfterLoad is invoked from XORM after setting the values of all fields of this object.
func (*Repository) AllowOnlyContributorsToTrackTime ¶
func (repo *Repository) AllowOnlyContributorsToTrackTime(ctx context.Context) bool
AllowOnlyContributorsToTrackTime returns value of IssuesConfig or the default value
func (*Repository) AllowsPulls ¶
func (repo *Repository) AllowsPulls() bool
AllowsPulls returns true if repository meets the requirements of accepting pulls and has them enabled.
func (*Repository) AvatarLink ¶
func (repo *Repository) AvatarLink(ctx context.Context) string
AvatarLink returns a link to the repository's avatar.
func (*Repository) CanCreateBranch ¶
func (repo *Repository) CanCreateBranch() bool
CanCreateBranch returns true if repository meets the requirements for creating new branches.
func (*Repository) CanEnableEditor ¶
func (repo *Repository) CanEnableEditor() bool
CanEnableEditor returns true if repository meets the requirements of web editor.
func (*Repository) CanEnablePulls ¶
func (repo *Repository) CanEnablePulls() bool
CanEnablePulls returns true if repository meets the requirements of accepting pulls.
func (*Repository) CanEnableTimetracker ¶
func (repo *Repository) CanEnableTimetracker() bool
CanEnableTimetracker returns true when the server admin enabled time tracking This overrules IsTimetrackerEnabled
func (*Repository) CloneLink ¶
func (repo *Repository) CloneLink() (cl *CloneLink)
CloneLink returns clone URLs of repository.
func (*Repository) ColorFormat ¶
func (repo *Repository) ColorFormat(s fmt.State)
ColorFormat returns a colored string to represent this repo
func (*Repository) CommitLink ¶
func (repo *Repository) CommitLink(commitID string) (result string)
CommitLink make link to by commit full ID note: won't check whether it's an right id
func (*Repository) ComposeCompareURL ¶
func (repo *Repository) ComposeCompareURL(oldCommitID, newCommitID string) string
ComposeCompareURL returns the repository comparison URL
func (*Repository) ComposeDocumentMetas ¶
func (repo *Repository) ComposeDocumentMetas() map[string]string
ComposeDocumentMetas composes a map of metas for properly rendering documents
func (*Repository) ComposeMetas ¶
func (repo *Repository) ComposeMetas() map[string]string
ComposeMetas composes a map of metas for properly rendering issue links and external issue trackers.
func (*Repository) CustomAvatarRelativePath ¶
func (repo *Repository) CustomAvatarRelativePath() string
CustomAvatarRelativePath returns repository custom avatar file path.
func (*Repository) DescriptionHTML ¶
func (repo *Repository) DescriptionHTML(ctx context.Context) template.HTML
DescriptionHTML does special handles to description and return HTML string.
func (*Repository) FullName ¶
func (repo *Repository) FullName() string
FullName returns the repository full name
func (*Repository) GetBaseRepo ¶
func (repo *Repository) GetBaseRepo(ctx context.Context) (err error)
GetBaseRepo populates repo.BaseRepo for a fork repository and returns an error on failure (NOTE: no error is returned for non-fork repositories, and BaseRepo will be left untouched)
func (*Repository) GetCommitsCountCacheKey ¶
func (repo *Repository) GetCommitsCountCacheKey(contextName string, isRef bool) string
GetCommitsCountCacheKey returns cache key used for commits count caching.
func (*Repository) GetOriginalURLHostname ¶
func (repo *Repository) GetOriginalURLHostname() string
GetOriginalURLHostname returns the hostname of a URL or the URL
func (*Repository) GetTrustModel ¶
func (repo *Repository) GetTrustModel() TrustModelType
GetTrustModel will get the TrustModel for the repo or the default trust model
func (*Repository) HTMLURL ¶
func (repo *Repository) HTMLURL() string
HTMLURL returns the repository HTML URL
func (*Repository) HasWiki ¶
func (repo *Repository) HasWiki() bool
HasWiki returns true if repository has wiki.
func (*Repository) IsBeingCreated ¶
func (repo *Repository) IsBeingCreated() bool
IsBeingCreated indicates that repository is being migrated or forked
func (*Repository) IsBeingMigrated ¶
func (repo *Repository) IsBeingMigrated() bool
IsBeingMigrated indicates that repository is being migrated
func (*Repository) IsBroken ¶
func (repo *Repository) IsBroken() bool
IsBroken indicates that repository is broken
func (*Repository) IsDependenciesEnabled ¶
func (repo *Repository) IsDependenciesEnabled(ctx context.Context) bool
IsDependenciesEnabled returns if dependencies are enabled and returns the default setting if not set.
func (*Repository) IsGenerated ¶
func (repo *Repository) IsGenerated() bool
IsGenerated returns whether _this_ repository was generated from a template
func (*Repository) IsOwnedBy ¶
func (repo *Repository) IsOwnedBy(userID int64) bool
IsOwnedBy returns true when user owns this repository
func (*Repository) IsTimetrackerEnabled ¶
func (repo *Repository) IsTimetrackerEnabled(ctx context.Context) bool
IsTimetrackerEnabled returns whether or not the timetracker is enabled. It returns the default value from config if an error occurs.
func (*Repository) Link ¶
func (repo *Repository) Link() string
Link returns the repository relative url
func (*Repository) LoadAttributes ¶ added in v1.17.0
func (repo *Repository) LoadAttributes(ctx context.Context) error
LoadAttributes loads attributes of the repository.
func (*Repository) LoadOwner ¶ added in v1.19.0
func (repo *Repository) LoadOwner(ctx context.Context) (err error)
LoadOwner loads owner user
func (*Repository) LoadUnits ¶
func (repo *Repository) LoadUnits(ctx context.Context) (err error)
LoadUnits loads repo units into repo.Units
func (*Repository) MustGetUnit ¶
MustGetUnit always returns a RepoUnit object
func (*Repository) MustOwner ¶
func (repo *Repository) MustOwner(ctx context.Context) *user_model.User
MustOwner always returns a valid *user_model.User object to avoid conceptually impossible error handling. It creates a fake object that contains error details when error occurs.
func (*Repository) RelAvatarLink ¶
func (repo *Repository) RelAvatarLink() string
RelAvatarLink returns a relative link to the repository's avatar.
func (*Repository) RepoPath ¶
func (repo *Repository) RepoPath() string
RepoPath returns the repository path
func (*Repository) SanitizedOriginalURL ¶
func (repo *Repository) SanitizedOriginalURL() string
SanitizedOriginalURL returns a sanitized OriginalURL
func (*Repository) TemplateRepo ¶
func (repo *Repository) TemplateRepo() *Repository
TemplateRepo returns the repository, which is template of this repository
func (*Repository) UnitEnabled ¶
UnitEnabled if this repository has the given unit enabled
func (*Repository) WikiCloneLink ¶
func (repo *Repository) WikiCloneLink() *CloneLink
WikiCloneLink returns clone URLs of repository wiki.
func (*Repository) WikiPath ¶
func (repo *Repository) WikiPath() string
WikiPath returns wiki data path for given repository.
type RepositoryList ¶ added in v1.17.0
type RepositoryList []*Repository
RepositoryList contains a list of repositories
func GetUserRepositories ¶ added in v1.17.0
func GetUserRepositories(opts *SearchRepoOptions) (RepositoryList, int64, error)
GetUserRepositories returns a list of repositories of given user.
func RepositoryListOfMap ¶ added in v1.17.0
func RepositoryListOfMap(repoMap map[int64]*Repository) RepositoryList
RepositoryListOfMap make list from values of map
func SearchRepository ¶ added in v1.17.0
func SearchRepository(ctx context.Context, opts *SearchRepoOptions) (RepositoryList, int64, error)
SearchRepository returns repositories based on search options, it returns results in given range and number of total results.
func SearchRepositoryByCondition ¶ added in v1.17.0
func SearchRepositoryByCondition(ctx context.Context, opts *SearchRepoOptions, cond builder.Cond, loadAttributes bool) (RepositoryList, int64, error)
SearchRepositoryByCondition search repositories by condition
func SearchRepositoryByName ¶ added in v1.17.0
func SearchRepositoryByName(ctx context.Context, opts *SearchRepoOptions) (RepositoryList, int64, error)
SearchRepositoryByName takes keyword and part of repository name to search, it returns results in given range and number of total results.
func (RepositoryList) Len ¶ added in v1.17.0
func (repos RepositoryList) Len() int
func (RepositoryList) Less ¶ added in v1.17.0
func (repos RepositoryList) Less(i, j int) bool
func (RepositoryList) LoadAttributes ¶ added in v1.17.0
func (repos RepositoryList) LoadAttributes() error
LoadAttributes loads the attributes for the given RepositoryList
func (RepositoryList) Swap ¶ added in v1.17.0
func (repos RepositoryList) Swap(i, j int)
type RepositoryStatus ¶
type RepositoryStatus int
RepositoryStatus defines the status of repository
const ( RepositoryReady RepositoryStatus = iota // a normal repository RepositoryBeingMigrated // repository is migrating RepositoryPendingTransfer // repository pending in ownership transfer state RepositoryBroken // repository is in a permanently broken state )
all kinds of RepositoryStatus
type SearchOrderBy ¶ added in v1.17.0
type SearchOrderBy string
SearchOrderBy is used to sort the result
const ( SearchOrderByAlphabetically SearchOrderBy = "name ASC" SearchOrderByAlphabeticallyReverse SearchOrderBy = "name DESC" SearchOrderByLeastUpdated SearchOrderBy = "updated_unix ASC" SearchOrderByRecentUpdated SearchOrderBy = "updated_unix DESC" SearchOrderByOldest SearchOrderBy = "created_unix ASC" SearchOrderByNewest SearchOrderBy = "created_unix DESC" SearchOrderBySize SearchOrderBy = "size ASC" SearchOrderBySizeReverse SearchOrderBy = "size DESC" SearchOrderByID SearchOrderBy = "id ASC" SearchOrderByIDReverse SearchOrderBy = "id DESC" SearchOrderByStars SearchOrderBy = "num_stars ASC" SearchOrderByStarsReverse SearchOrderBy = "num_stars DESC" SearchOrderByForks SearchOrderBy = "num_forks ASC" SearchOrderByForksReverse SearchOrderBy = "num_forks DESC" )
Strings for sorting result
func (SearchOrderBy) String ¶ added in v1.17.0
func (s SearchOrderBy) String() string
type SearchRepoOptions ¶ added in v1.17.0
type SearchRepoOptions struct { db.ListOptions Actor *user_model.User Keyword string OwnerID int64 PriorityOwnerID int64 TeamID int64 OrderBy db.SearchOrderBy Private bool // Include private repositories in results StarredByID int64 WatchedByID int64 AllPublic bool // Include also all public repositories of users and public organisations AllLimited bool // Include also all public repositories of limited organisations // None -> include public and private // True -> include just private // False -> include just public IsPrivate util.OptionalBool // None -> include collaborative AND non-collaborative // True -> include just collaborative // False -> include just non-collaborative Collaborate util.OptionalBool // None -> include forks AND non-forks // True -> include just forks // False -> include just non-forks Fork util.OptionalBool // None -> include templates AND non-templates // True -> include just templates // False -> include just non-templates Template util.OptionalBool // None -> include mirrors AND non-mirrors // True -> include just mirrors // False -> include just non-mirrors Mirror util.OptionalBool // None -> include archived AND non-archived // True -> include just archived // False -> include just non-archived Archived util.OptionalBool // only search topic name TopicOnly bool // only search repositories with specified primary language Language string // include description in keyword search IncludeDescription bool // None -> include has milestones AND has no milestone // True -> include just has milestones // False -> include just has no milestone HasMilestones util.OptionalBool // LowerNames represents valid lower names to restrict to LowerNames []string // When specified true, apply some filters over the conditions: // - Don't show forks, when opts.Fork is OptionalBoolNone. // - Do not display repositories that don't have a description, an icon and topics. OnlyShowRelevant bool }
SearchRepoOptions holds the search options
type Star ¶
type Star struct { ID int64 `xorm:"pk autoincr"` UID int64 `xorm:"UNIQUE(s)"` RepoID int64 `xorm:"UNIQUE(s)"` CreatedUnix timeutil.TimeStamp `xorm:"INDEX created"` }
Star represents a starred repo by an user.
type Topic ¶
type Topic struct { ID int64 `xorm:"pk autoincr"` Name string `xorm:"UNIQUE VARCHAR(50)"` RepoCount int CreatedUnix timeutil.TimeStamp `xorm:"INDEX created"` UpdatedUnix timeutil.TimeStamp `xorm:"INDEX updated"` }
Topic represents a topic of repositories
func DeleteTopic ¶
DeleteTopic removes a topic name from a repository (if it has it)
func FindTopics ¶
func FindTopics(opts *FindTopicOptions) ([]*Topic, int64, error)
FindTopics retrieves the topics via FindTopicOptions
func GetRepoTopicByName ¶
GetRepoTopicByName retrieves topic from name for a repo if it exist
func GetTopicByName ¶
GetTopicByName retrieves topic by name
type TrustModelType ¶
type TrustModelType int
TrustModelType defines the types of trust model for this repository
const ( DefaultTrustModel TrustModelType = iota // default trust model CommitterTrustModel CollaboratorTrustModel CollaboratorCommitterTrustModel )
kinds of TrustModel
func ToTrustModel ¶
func ToTrustModel(model string) TrustModelType
ToTrustModel converts a string to a TrustModelType
func (TrustModelType) String ¶
func (t TrustModelType) String() string
String converts a TrustModelType to a string
type UnitConfig ¶
type UnitConfig struct{}
UnitConfig describes common unit config
func (*UnitConfig) FromDB ¶
func (cfg *UnitConfig) FromDB(bs []byte) error
FromDB fills up a UnitConfig from serialized format.
func (*UnitConfig) ToDB ¶
func (cfg *UnitConfig) ToDB() ([]byte, error)
ToDB exports a UnitConfig to a serialized format.
type Upload ¶ added in v1.17.4
Upload represent a uploaded file to a repo to be deleted when moved
func GetUploadByUUID ¶ added in v1.17.4
GetUploadByUUID returns the Upload by UUID
func GetUploadsByUUIDs ¶ added in v1.17.4
GetUploadsByUUIDs returns multiple uploads by UUIDS
type Watch ¶
type Watch struct { ID int64 `xorm:"pk autoincr"` UserID int64 `xorm:"UNIQUE(watch)"` RepoID int64 `xorm:"UNIQUE(watch)"` Mode WatchMode `xorm:"SMALLINT NOT NULL DEFAULT 1"` CreatedUnix timeutil.TimeStamp `xorm:"INDEX created"` UpdatedUnix timeutil.TimeStamp `xorm:"INDEX updated"` }
Watch is connection request for receiving repository notification.