repository

package
v0.19.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 24, 2023 License: MIT Imports: 44 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrBranchIsDefault = errors.New("branch is default")
)

enmuerates all branch related errors

Functions

func AdoptRepository

func AdoptRepository(ctx context.Context, doer, u *user_model.User, opts repo_module.CreateRepoOptions) (*repo_model.Repository, error)

AdoptRepository adopts pre-existing repository files for the user/organization.

func CacheRef

func CacheRef(ctx context.Context, repo *repo_model.Repository, gitRepo *git.Repository, fullRefName string) error

CacheRef cachhe last commit information of the branch or the tag

func ChangeRepositoryName

func ChangeRepositoryName(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, newRepoName string) error

ChangeRepositoryName changes all corresponding setting from old repository name to new one.

func ConvertForkToNormalRepository

func ConvertForkToNormalRepository(ctx context.Context, repo *repo_model.Repository) error

ConvertForkToNormalRepository convert the provided repo from a forked repo to normal repo

func CreateNewBranch

func CreateNewBranch(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, oldBranchName, branchName string) (err error)

CreateNewBranch creates a new repository branch

func CreateNewBranchFromCommit

func CreateNewBranchFromCommit(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, commit, branchName string) (err error)

CreateNewBranchFromCommit creates a new repository branch

func CreateRepository

func CreateRepository(ctx context.Context, doer, owner *user_model.User, opts repo_module.CreateRepoOptions) (*repo_model.Repository, error)

CreateRepository creates a repository for the user/organization.

func DeleteAvatar

func DeleteAvatar(ctx context.Context, repo *repo_model.Repository) error

DeleteAvatar deletes the repos's custom avatar.

func DeleteBranch

func DeleteBranch(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, gitRepo *git.Repository, branchName string) error

DeleteBranch delete branch

func DeleteMissingRepositories

func DeleteMissingRepositories(ctx context.Context, doer *user_model.User) error

DeleteMissingRepositories deletes all repository records that lost Git files.

func DeleteRepository

func DeleteRepository(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, notify bool) error

DeleteRepository deletes a repository for a user or organization.

func DeleteUnadoptedRepository

func DeleteUnadoptedRepository(ctx context.Context, doer, u *user_model.User, repoName string) error

DeleteUnadoptedRepository deletes unadopted repository files from the filesystem

func ForkRepository

func ForkRepository(ctx context.Context, doer, owner *user_model.User, opts ForkRepoOptions) (*repo_model.Repository, error)

ForkRepository forks a repository

func GarbageCollectLFSMetaObjects

func GarbageCollectLFSMetaObjects(ctx context.Context, opts GarbageCollectLFSMetaObjectsOptions) error

GarbageCollectLFSMetaObjects garbage collects LFS objects for all repositories

func GarbageCollectLFSMetaObjectsForRepo

func GarbageCollectLFSMetaObjectsForRepo(ctx context.Context, repo *repo_model.Repository, opts GarbageCollectLFSMetaObjectsOptions) error

GarbageCollectLFSMetaObjectsForRepo garbage collects LFS objects for a specific repository

func GenerateGitHooks

func GenerateGitHooks(ctx context.Context, templateRepo, generateRepo *repo_model.Repository) error

GenerateGitHooks generates git hooks from a template repository

func GenerateIssueLabels

func GenerateIssueLabels(ctx context.Context, templateRepo, generateRepo *repo_model.Repository) error

GenerateIssueLabels generates issue labels from a template repository

func GenerateRepository

func GenerateRepository(ctx context.Context, doer, owner *user_model.User, templateRepo *repo_model.Repository, opts repo_module.GenerateRepoOptions) (_ *repo_model.Repository, err error)

GenerateRepository generates a repository from a template

func GenerateWebhooks

func GenerateWebhooks(ctx context.Context, templateRepo, generateRepo *repo_model.Repository) error

GenerateWebhooks generates webhooks from a template repository

func GetBranchCommitID

func GetBranchCommitID(ctx context.Context, repo *repo_model.Repository, branch string) (string, error)

func GetBranches

func GetBranches(ctx context.Context, repo *repo_model.Repository, skip, limit int) ([]*git.Branch, int, error)

GetBranches returns branches from the repository, skipping skip initial branches and returning at most limit branches, or all branches if limit is 0.

func GetReviewerTeams

func GetReviewerTeams(ctx context.Context, repo *repo_model.Repository) ([]*organization.Team, error)

GetReviewerTeams get all teams can be requested to review

func GitFsckRepo

func GitFsckRepo(ctx context.Context, repo *repo_model.Repository, timeout time.Duration, args git.TrustedCmdArgs) error

GitFsckRepo calls 'git fsck' to check an individual repository's health.

func GitFsckRepos

func GitFsckRepos(ctx context.Context, timeout time.Duration, args git.TrustedCmdArgs) error

GitFsckRepos calls 'git fsck' to check repository health.

func GitGcRepo

func GitGcRepo(ctx context.Context, repo *repo_model.Repository, timeout time.Duration, args git.TrustedCmdArgs) error

GitGcRepo calls 'git gc' to remove unnecessary files and optimize the local repository

func GitGcRepos

func GitGcRepos(ctx context.Context, timeout time.Duration, args git.TrustedCmdArgs) error

GitGcRepos calls 'git gc' to remove unnecessary files and optimize the local repository

func Init

func Init() error

Init start repository service

func IsErrForkAlreadyExist

func IsErrForkAlreadyExist(err error) bool

IsErrForkAlreadyExist checks if an error is an ErrForkAlreadyExist.

func LinkedRepository

func LinkedRepository(ctx context.Context, a *repo_model.Attachment) (*repo_model.Repository, unit.Type, error)

LinkedRepository returns the linked repo if any

func ListUnadoptedRepositories

func ListUnadoptedRepositories(ctx context.Context, query string, opts *db.ListOptions) ([]string, int, error)

ListUnadoptedRepositories lists all the unadopted repositories that match the provided query

func PushCreateRepo

func PushCreateRepo(ctx context.Context, authUser, owner *user_model.User, repoName string) (*repo_model.Repository, error)

PushCreateRepo creates a repository when a new repository is pushed to an appropriate namespace

func PushUpdate

func PushUpdate(opts *repo_module.PushUpdateOptions) error

PushUpdate is an alias of PushUpdates for single push update options

func PushUpdateAddDeleteTags

func PushUpdateAddDeleteTags(ctx context.Context, repo *repo_model.Repository, gitRepo *git.Repository, addTags, delTags []string) error

PushUpdateAddDeleteTags updates a number of added and delete tags

func PushUpdates

func PushUpdates(opts []*repo_module.PushUpdateOptions) error

PushUpdates adds a push update to push queue

func ReinitMissingRepositories

func ReinitMissingRepositories(ctx context.Context) error

ReinitMissingRepositories reinitializes all repository records that lost Git files.

func RemoveRandomAvatars

func RemoveRandomAvatars(ctx context.Context) error

RemoveRandomAvatars removes the randomly generated avatars that were created for repositories

func RenameBranch

func RenameBranch(ctx context.Context, repo *repo_model.Repository, doer *user_model.User, gitRepo *git.Repository, from, to string) (string, error)

RenameBranch rename a branch

func StartRepositoryTransfer

func StartRepositoryTransfer(ctx context.Context, doer, newOwner *user_model.User, repo *repo_model.Repository, teams []*organization.Team) error

StartRepositoryTransfer transfer a repo from one owner to a new one. it make repository into pending transfer state, if doer can not create repo for new owner.

func SyncRepositoryHooks

func SyncRepositoryHooks(ctx context.Context) error

SyncRepositoryHooks rewrites all repositories' pre-receive, update and post-receive hooks to make sure the binary and custom conf path are up-to-date.

func TransferOwnership

func TransferOwnership(ctx context.Context, doer, newOwner *user_model.User, repo *repo_model.Repository, teams []*organization.Team) error

TransferOwnership transfers all corresponding setting from old user to new one.

func UpdateRepository

func UpdateRepository(ctx context.Context, repo *repo_model.Repository, visibilityChanged bool) (err error)

UpdateRepository updates a repository

func UploadAvatar

func UploadAvatar(ctx context.Context, repo *repo_model.Repository, data []byte) error

UploadAvatar saves custom avatar for repository. FIXME: split uploads to different subdirs in case we have massive number of repos.

Types

type ErrForkAlreadyExist

type ErrForkAlreadyExist struct {
	Uname    string
	RepoName string
	ForkName string
}

ErrForkAlreadyExist represents a "ForkAlreadyExist" kind of error.

func (ErrForkAlreadyExist) Error

func (err ErrForkAlreadyExist) Error() string

func (ErrForkAlreadyExist) Unwrap

func (err ErrForkAlreadyExist) Unwrap() error

type ForkRepoOptions

type ForkRepoOptions struct {
	BaseRepo    *repo_model.Repository
	Name        string
	Description string
}

ForkRepoOptions contains the fork repository options

type GarbageCollectLFSMetaObjectsOptions

type GarbageCollectLFSMetaObjectsOptions struct {
	Logger                   log.Logger
	AutoFix                  bool
	OlderThan                time.Time
	UpdatedLessRecentlyThan  time.Time
	NumberToCheckPerRepo     int64
	ProportionToCheckPerRepo float64
}

GarbageCollectLFSMetaObjectsOptions provides options for GarbageCollectLFSMetaObjects function

type WebSearchRepository

type WebSearchRepository struct {
	Repository         *structs.Repository `json:"repository"`
	LatestCommitStatus *git.CommitStatus   `json:"latest_commit_status"`
}

WebSearchRepository represents a repository returned by web search

type WebSearchResults

type WebSearchResults struct {
	OK   bool                   `json:"ok"`
	Data []*WebSearchRepository `json:"data"`
}

WebSearchResults results of a successful web search

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL