Commit graph

97 commits

Author SHA1 Message Date
Kynan Ware
253b082600 Return err instead of silentError in merge queue check 2024-12-12 15:54:01 -07:00
Kynan Ware
439cfa08bb Exit on pr merge with -d and merge queue
When running `gh pr merge -d` on a repo with a merge queue policy, exit before attempting to merge.
2024-12-12 14:49:38 -07:00
Yukai Chou
d7b8ecf33d Unify use of tab indent in non-test source files
Found with
    rg '(^ | \t|\t )' -g '*.go' -g '!*_test.go'

Mixed indent exceptions:
- wrapped long list items with extra 2-space indent
- code snippets using space indent
- commented code lines having "\t*// \t+" prefix
2024-08-03 00:35:30 +08:00
William Martin
1d38230675
Move config interfaces into gh package (#9060) 2024-05-10 10:39:36 +02:00
Andy Feller
bcdc917f08 Enhance 2nd round of issue and PR number output 2024-03-01 15:42:43 -05:00
Andy Feller
3bb5f54073 Apply first round of owner/repo#number consistency
This commit expands on @nobe4 initial work by bringing the owner and repository name to the most obvious issue and PR number output use cases before making a second pass for any edge cases.
2024-03-01 14:03:18 -05:00
nobe4
db93444ba9
feat(merge): add owner/repo in prompt
Various places during the `gh pr merge` flow show the PR number and
title. Those places are updated to also show the owner/repo.

E.g.
Before:
  Pull request #123 (title) is ready to be merged
After:
  Pull request owner/repo#123 (title) is ready to be merged

There are other places, where only the number is displayed. Those were
intentionally left as is. It made sense to show the owner/repo only when
the extra context of the title was present.

It also fixes the related tests.

cc #8777
2024-03-01 13:26:20 +01:00
Andy Feller
c7c74dd422
Merge pull request #8342 from muzimuzhi/docs/unify-markup
Unify doc mark-ups
2023-12-01 09:31:36 -05:00
ffalor
74e5e84d71
Update pkg/cmd/pr/merge/merge.go
Co-authored-by: Andy Feller <andyfeller@github.com>
2023-11-30 18:51:09 -06:00
ffalor
ed68930c64 print info about merge when interactive 2023-11-26 18:44:52 -06:00
Yukai Chou
b70c28ba20 Misc docs improvements 2023-11-17 01:32:28 +08:00
Yukai Chou
17d336e005 Wrap cli flags in backticks uniformly 2023-11-16 22:54:27 +08:00
Armand Grillet
fc685f92b6
Allow deleting of local branch after merging cross repo PRs (#7709) 2023-07-25 09:03:33 -07:00
Alexander Seiler
218f29f296
Correct some typos 2023-04-21 03:51:31 +02:00
vilmibm
afcfd78852 use Prompter in pr merge 2022-10-19 13:05:00 -07:00
Sam Coe
57fbe4f317
Refactor to use new git client (#6447) 2022-10-19 21:11:36 +03:00
Austin Coakley
6d4b10edf0 Added flag to pr merge allowing the selection of the merge commit email 2022-10-01 12:16:05 -05:00
vilmibm
41385477c3 fix linting 2022-07-27 14:15:27 -05:00
ffalor
2388f51927
Add --match-head-commit field to gh pr merge (#5692)
Co-authored-by: Sam Coe <samcoe@users.noreply.github.com>
2022-06-20 17:18:00 +02:00
Ariel Deitcher
53a8737c87 pr merge: add support for Merge Queue
Co-authored-by: Mislav Marohnić <mislav@github.com>
2022-06-08 12:24:36 +02:00
Mislav Marohnić
2c178cedd5 Dis-ambiguate "currentBranch" 2022-05-04 22:38:19 +02:00
Mislav Marohnić
b9026ab862 💅 2022-05-04 22:23:52 +02:00
Ariel Deitcher
c50786ed39 refactor merge command 2022-04-25 09:30:04 -07:00
Ariel Deitcher
c445529719
warn if PR is already merged (#5463) 2022-04-14 07:47:04 +00:00
Kiran Adhikari
4f7c88ea4e
pr merge: print instructions for merge conflicts (#5330)
Co-authored-by: Sam Coe <samcoe@users.noreply.github.com>
Co-authored-by: Mislav Marohnić <mislav@github.com>
2022-04-13 10:28:05 +00:00
Boston Cartwright
bb9bf29835
pr merge switch to base branch if available (#5251)
* after merge, switch to base branch if available

* Add ability to checkout new branch

* Style cleanup

Co-authored-by: Sam Coe <samcoe@users.noreply.github.com>
2022-03-14 14:02:57 +02:00
Yuki Hirasawa
4f0264e37b
spelling: possible (#5157) 2022-02-02 16:54:09 +01:00
Cristian Dominguez
f2d23d8c88
Allow editing commit subject when squash-merging a PR (#3344)
Co-authored-by: Mislav Marohnić <mislav@github.com>
2021-12-20 18:25:17 +00:00
Tomohiro Nishimura
a9d397be69
Add --generate-notes flag to gh release create command. (#4467) 2021-12-08 15:20:59 +04:00
Parth
c987c5711d
pr merge: pull after switching branches (#4748) 2021-11-29 18:26:35 +01:00
Parth
39bd9aafdc
pr merge: allow deleting remote branch if local branch does not exist (#4769) 2021-11-24 16:50:25 +01:00
Alan Donovan
f4491c7a80 Add FlagErrorf; encapsulate FlagError.error 2021-10-21 11:40:20 -04:00
Reto Hablützel
f6e9734f17 add more hints to docs 2021-09-25 08:38:26 +02:00
Mislav Marohnić
11fbb60ae7 Rename the module to "github.com/cli/cli/v2" 2021-08-25 12:41:30 +02:00
Mislav Marohnić
5d1d967c43 💅 Clean up pr merge admin logic 2021-08-03 15:49:55 +02:00
rsteube
baa18c164d pr merge: added --admin flag 2021-08-02 13:02:32 +02:00
Mislav Marohnić
a83c2924c5 Never prompt to delete branch if --auto was given 2021-07-20 19:49:19 +02:00
Mislav Marohnić
6e026412df Add "UNSTABLE" to immediately mergeable statuses
This status describes a state where the head branch is mergeable and
technically not blocked per base branch requirements, but it does have
non-passing checks.
2021-07-20 19:42:53 +02:00
Mislav Marohnić
6f2dfd7eea Adjust conditions for switching between regular and auto merge
Conditions prohibiting a regular merge: BLOCKED, BEHIND, DIRTY.

Conditions triggering a regular merge even if `--auto` was set: CLEAN,
HAS_HOOKS.

Note that UNKNOWN status does not trigger either of the conditions.
2021-07-20 19:34:32 +02:00
Cristian Dominguez
bcab8c0766 Only merge PRs if branch checks have passed 2021-07-05 12:46:36 -03:00
Cristian Dominguez
6115868343 Suggest to enable auto-merge when PR merge state is BLOCKED 2021-06-19 11:46:17 -03:00
Cristian Dominguez
498f15653e Simplify auto-merge detection 2021-06-19 01:40:28 -03:00
Cristian Dominguez
325886c0e4 Only schedule an auto-merge when PR state is blocked
When passing `--auto` flag, only schedule an auto-merge if
the `mergeStateStatus` field is "BLOCKED".
This ensures that a PR will always be merged when passing `--auto` even
if it doesn't have required checks or if checks have already passed.
2021-05-24 18:45:59 -03:00
Mislav Marohnić
6bec7a956a Fix pr merge on GHE < 3.0
This avoids loading authorship information for git commits, since it
relies on a GraphQL API that wasn't available before GHE v3.0. The
authorship information wasn't necessary for the merge operation anyway;
just loading the last commit OID was.
2021-05-21 17:35:41 +02:00
Mislav Marohnić
e758f30073 Fix preloading of pr reviews, checks, and issue/pr comments 2021-05-18 17:13:27 +02:00
Mislav Marohnić
9bdc63c4ca Eliminate API overfetching in pr commands
This completely rewrites the PR lookup mechanism so that the caller
must specify the GraphQL fields to query for each PR. Additionally, this
fixes some export problems with `pr view --json`.

Features:

- Each pr command now gets assigned a concept of a Finder. This makes it
  easier to stub the PR in tests without having to stub the underlying
  HTTP calls or git invocations.

- `pr view --web` is much faster since it only fetches the "url" field.

- `pr diff 123` now skips a whole API call where a whole PR was
  unnecessarily preloaded just to access its diff in a subsequent call.

- PullRequestGraphQL query builder is now used to construct queries.

- A bunch of individual commands are now freed of having to know about
  concepts such as BaseRepo, Branch, Config, or Remotes.
2021-04-30 20:34:36 +02:00
Cristian Dominguez
8a0d5b0e43 Add note about current branch detection 2021-04-13 12:30:07 -03:00
Cristian Dominguez
8bfe64d593 Accept --body-file flag if --body is supported 2021-03-15 15:12:41 +01:00
Mislav Marohnić
dd34cae112 Merge remote-tracking branch 'origin' into cancel-error-status 2021-03-02 13:52:07 +01:00
Mislav Marohnić
2ebdde1ddd Exit with status code "2" on user cancellation errors
This also stops printing "interrupt" after Ctrl-C is pressed.
2021-03-02 13:48:44 +01:00