Documentation
¶
Index ¶
Constants ¶
View Source
const PRMetadataCommentEnd = "-->\n"
View Source
const PRMetadataCommentHelpText = "" /* 165-byte string literal not displayed */
View Source
const PRMetadataCommentStart = "<!-- av pr metadata\n"
Variables ¶
This section is empty.
Functions ¶
func AddPRMetadata ¶ added in v0.0.7
func AddPRMetadata(body string, prMeta PRMetadata) string
Types ¶
type CreatePullRequestOpts ¶
type CreatePullRequestOpts struct {
BranchName string
Title string
Body string
// If true, create the pull request as a GitHub draft PR.
Draft bool
// If true, do not push the branch to GitHub
NoPush bool
// If true, force push the branch to GitHub
ForcePush bool
// If true, create a PR even if we think one already exists
Force bool
}
type CreatePullRequestResult ¶ added in v0.0.6
type CreatePullRequestResult struct {
// True if the pull request was created
Created bool
// The (updated) branch metadata.
Branch meta.Branch
// The pull request object that was returned from GitHub
Pull *gh.PullRequest
}
func CreatePullRequest ¶
func CreatePullRequest(ctx context.Context, repo *git.Repo, client *gh.Client, opts CreatePullRequestOpts) (*CreatePullRequestResult, error)
CreatePullRequest creates a pull request on GitHub for the current branch, if one doesn't already exist.
type ForceOpt ¶
type ForceOpt int
const ( NoForce ForceOpt = iota // ForceWithLease indicates that the push should use the --force-with-lease // option which instructs Git that it should only force push to the remote // branch if its current HEAD matches what we think it should be. ForceWithLease ForceOpt = iota ForcePush ForceOpt = iota )
type PRMetadata ¶ added in v0.0.7
type PRMetadata struct {
Parent string `json:"parent"`
ParentHead string `json:"parentHead"`
ParentPull int64 `json:"parentPull,omitempty"`
Trunk string `json:"trunk"`
}
func ParsePRMetadata ¶ added in v0.0.7
func ParsePRMetadata(input string) (commentStart int, commentEnd int, prMeta PRMetadata, reterr error)
func ReadPRMetadata ¶ added in v0.0.7
func ReadPRMetadata(body string) (PRMetadata, error)
type PushOpts ¶
type PushOpts struct {
Force ForceOpt
// If true, require the upstream tracking information to already be set
// (otherwise, don't push).
SkipIfUpstreamNotSet bool
// If true, skip pushing the branch if the upstream commit is the same as
// the local HEAD commit. The caller should probably call `git fetch` before
// running this to make sure remote tracking information is up-to-date.
SkipIfUpstreamMatches bool
}
type ReparentOpts ¶ added in v0.0.5
type ReparentResult ¶ added in v0.0.4
func Reparent ¶ added in v0.0.4
func Reparent(repo *git.Repo, opts ReparentOpts) (*ReparentResult, error)
Reparent changes the parent branch of a stacked branch (performing a rebase if necessary).
func ReparentContinue ¶ added in v0.0.4
func ReparentContinue(repo *git.Repo, opts ReparentOpts) (*ReparentResult, error)
type UpdatePullRequestResult ¶ added in v0.0.4
type UpdatePullRequestResult struct {
// True if the pull request information changed (e.g., a new pull request
// was found or if the pull request changed state)
Changed bool
// The (updated) branch metadata.
Branch meta.Branch
// The pull request object that was returned from GitHub
Pull *gh.PullRequest
}
func UpdatePullRequestState ¶ added in v0.0.4
func UpdatePullRequestState(ctx context.Context, repo *git.Repo, client *gh.Client, repoMeta meta.Repository, branchName string) (*UpdatePullRequestResult, error)
UpdatePullRequestState fetches the latest pull request information from GitHub and writes the relevant branch metadata.
Click to show internal directories.
Click to hide internal directories.