func (repo *Repository) GetBranch(br string) (*Branch, error) { if !git.IsBranchExist(repo.RepoPath(), br) { return nil, &ErrBranchNotExist{br} } return &Branch{ Path: repo.RepoPath(), Name: br, }, nil }
// discardLocalRepoBranchChanges discards local commits/changes of // given branch to make sure it is even to remote branch. func discardLocalRepoBranchChanges(localPath, branch string) error { if !com.IsExist(localPath) { return nil } // No need to check if nothing in the repository. if !git.IsBranchExist(localPath, branch) { return nil } refName := "origin/" + branch if err := git.ResetHEAD(localPath, true, refName); err != nil { return fmt.Errorf("git reset --hard %s: %v", refName, err) } return nil }