microsoft / microsoft/vscode-pull-request-github

Request for `>GitHub Pull Requests: Forget Pull Request`

オープン
#8,639 コメント 1 件 リアクション 4 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

主要言語
TypeScript
スター
2.6k
フォーク
795
平均マージ
1日 4時間
マージ済み PR(30日)
46

説明

When I create a pull request, my workflow is typically:

  • Create a branch, feature/foo
  • Do work
  • Create a pull request associated with feature/foo
  • Get a review from a colleague
  • Look at the review on GitHub
  • Merge the pull request from GitHub

This leaves my local state in an awkward scenario. I need to:

  • Switch to main
  • Pull main
  • Delete my feature/foo branch

I can do this manually, but this is such a common workflow of mine that I feel like a command for this is somehow missing. In R, we've created a suite of PR related helpers for this and the relevant one is usethis::pr_finish(), which does these exact steps.

The closest I can seem to get is:

  • >GitHub Pull Requests: Checkout Default Branch
  • With "githubPullRequests.postDone": "checkoutDefaultBranchAndPull"

(I'm not even 100% sure that a pull occurs when you use the command, but I think it does)

This accomplishes the first 2 bullets, but not the 3rd, so I have to go delete feature/foo myself.

I think I am missing something like

>GitHub Pull Requests: Forget Pull Request

Which has the purpose of:

  • Checkout the default branch (subject to githubPullRequests.postDone so I can make it also pull)
  • Delete the current branch you switched from

I would use this all the time if it existed as a way to cleanup after a merge via the GitHub UI.


I am aware of "githubPullRequests.deleteBranchAfterMerge": true. I do not believe that solves my problem because I almost exclusively merge via the GitHub UI, and it only works if I merge via the Extension UI.


It's also worth noting that if I checkout someone else's PR to perform a review, then it mostly works as I expect.

  • Checkout colleague PR feature/bar using the GitHub Pull Request extension
  • Leave my review
  • Click Checkout Default Branch (with "githubPullRequests.postDone": "checkoutDefaultBranchAndPull" set)
  • This auto deletes feature/bar for me

This workflow is quite nice! I want something similar for finishing off my own PRs.

Here is a video of me doing that workflow, which I do like:

https://github.com/user-attachments/assets/ff6a07e6-7ae5-4d8b-a447-91d51c96b597

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

まず、既存の Checkout Default Branch コマンドと、githubPullRequests.postDone および githubPullRequests.deleteBranchAfterMerge 設定を追跡します。マージされた pull request が default branch に戻り、設定された pull 動作を適用し、以前にチェックアウトされていた branch を削除できるようになれば、この機能は完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
git, github, typescript
領域
developer-experience, tooling
issue の種類
機能追加
難易度
3/5
見積もり時間
1〜2日
活発さ
静か
明瞭さ
おおむね明確
初心者へのやさしさ
58/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。