74 lines
2.4 KiB
Go
74 lines
2.4 KiB
Go
package pr
|
|
|
|
import (
|
|
"github.com/MakeNowJust/heredoc"
|
|
cmdLock "github.com/cli/cli/v2/pkg/cmd/issue/lock"
|
|
cmdCheckout "github.com/cli/cli/v2/pkg/cmd/pr/checkout"
|
|
cmdChecks "github.com/cli/cli/v2/pkg/cmd/pr/checks"
|
|
cmdClose "github.com/cli/cli/v2/pkg/cmd/pr/close"
|
|
cmdComment "github.com/cli/cli/v2/pkg/cmd/pr/comment"
|
|
cmdCreate "github.com/cli/cli/v2/pkg/cmd/pr/create"
|
|
cmdDiff "github.com/cli/cli/v2/pkg/cmd/pr/diff"
|
|
cmdEdit "github.com/cli/cli/v2/pkg/cmd/pr/edit"
|
|
cmdList "github.com/cli/cli/v2/pkg/cmd/pr/list"
|
|
cmdMerge "github.com/cli/cli/v2/pkg/cmd/pr/merge"
|
|
cmdReady "github.com/cli/cli/v2/pkg/cmd/pr/ready"
|
|
cmdReopen "github.com/cli/cli/v2/pkg/cmd/pr/reopen"
|
|
cmdRevert "github.com/cli/cli/v2/pkg/cmd/pr/revert"
|
|
cmdReview "github.com/cli/cli/v2/pkg/cmd/pr/review"
|
|
cmdStatus "github.com/cli/cli/v2/pkg/cmd/pr/status"
|
|
cmdUpdateBranch "github.com/cli/cli/v2/pkg/cmd/pr/update-branch"
|
|
cmdView "github.com/cli/cli/v2/pkg/cmd/pr/view"
|
|
"github.com/cli/cli/v2/pkg/cmdutil"
|
|
"github.com/spf13/cobra"
|
|
)
|
|
|
|
func NewCmdPR(f *cmdutil.Factory) *cobra.Command {
|
|
cmd := &cobra.Command{
|
|
Use: "pr <command>",
|
|
Short: "Manage pull requests",
|
|
Long: "Work with GitHub pull requests.",
|
|
Example: heredoc.Doc(`
|
|
$ gh pr checkout 353
|
|
$ gh pr create --fill
|
|
$ gh pr view --web
|
|
`),
|
|
Annotations: map[string]string{
|
|
"help:arguments": heredoc.Doc(`
|
|
A pull request can be supplied as argument in any of the following formats:
|
|
- by number, e.g. "123";
|
|
- by URL, e.g. "https://github.com/OWNER/REPO/pull/123"; or
|
|
- by the name of its head branch, e.g. "patch-1" or "OWNER:patch-1".
|
|
`),
|
|
},
|
|
GroupID: "core",
|
|
}
|
|
|
|
cmdutil.EnableRepoOverride(cmd, f)
|
|
|
|
cmdutil.AddGroup(cmd, "General commands",
|
|
cmdList.NewCmdList(f, nil),
|
|
cmdCreate.NewCmdCreate(f, nil),
|
|
cmdStatus.NewCmdStatus(f, nil),
|
|
)
|
|
|
|
cmdutil.AddGroup(cmd, "Targeted commands",
|
|
cmdView.NewCmdView(f, nil),
|
|
cmdDiff.NewCmdDiff(f, nil),
|
|
cmdCheckout.NewCmdCheckout(f, nil),
|
|
cmdChecks.NewCmdChecks(f, nil),
|
|
cmdReview.NewCmdReview(f, nil),
|
|
cmdMerge.NewCmdMerge(f, nil),
|
|
cmdUpdateBranch.NewCmdUpdateBranch(f, nil),
|
|
cmdReady.NewCmdReady(f, nil),
|
|
cmdComment.NewCmdComment(f, nil),
|
|
cmdClose.NewCmdClose(f, nil),
|
|
cmdReopen.NewCmdReopen(f, nil),
|
|
cmdRevert.NewCmdRevert(f, nil),
|
|
cmdEdit.NewCmdEdit(f, nil),
|
|
cmdLock.NewCmdLock(f, cmd.Name(), nil),
|
|
cmdLock.NewCmdUnlock(f, cmd.Name(), nil),
|
|
)
|
|
|
|
return cmd
|
|
}
|