プルリクエストを開始するには、github.comを操作する必要があるようです。これはそうですか?
11 に答える
更新:hubコマンドは公式のgithubプロジェクトになり、プルリクエストの作成もサポートしています
オリジナル:
ハブコマンドに追加するのに特に便利なもののようです:http://github.com/defunkt/hubまたはgithub gem:http: //github.com/defunkt/github-gem
私はそれを求めているそれらのプロジェクトに問題を提出することを提案します。githubの人たちはかなり敏感です。
Gitにはサブコマンドが付属しています'git request-pull' [-p] <start> <url> [<end>]
ここでドキュメントを見ることができます
これは便利な場合がありますが、GitHubの機能とまったく同じではありません。
Hubコマンドラインラッパーを使用すると、それをgitにリンクして、次のことができます。
git pull-request
ハブのマニュアルページから:
git pull-request [-f] [TITLE|-i ISSUE|ISSUE-URL] [-b BASE] [-h HEAD]
Opens a pull request on GitHub for the project that the "origin" remote points to. The default head of the pull request is the current branch. Both base and head of the pull request can be explicitly given in one of the following formats: "branch", "owner:branch",
"owner/repo:branch". This command will abort operation if it detects that the current topic branch has local commits that are not yet pushed to its upstream branch on the remote. To skip this check, use -f.
If TITLE is omitted, a text editor will open in which title and body of the pull request can be entered in the same manner as git commit message.
If instead of normal TITLE an issue number is given with -i, the pull request will be attached to an existing GitHub issue. Alternatively, instead of title you can paste a full URL to an issue on GitHub.
注:
Some of this answer is now outdated.
(2022-01-27)
(たとえば、gh Gemを使用します。)
現在、これを実行できるツールはhub
とだけgh
です。
男性は次のように検索します...
man git | grep pull | grep request
与える
git request-pull <start> <url> [<end>]
しかし、その名前にもかかわらず、それはあなたが望むものではありません。ドキュメントによると:
アップストリームプロジェクトに変更をツリーにプルするように依頼するリクエストを生成します。標準出力に出力される要求は、ブランチの説明で始まり、変更を要約し、どこからプルできるかを示します。
@HolgerJustはあなたが望むことをするgithubgemに言及しました:
sudo gem install gh
gh pull-request [user] [branch]
hub
他の人はgithubによる公式パッケージに言及しています:
sudo apt-get install hub
また
brew install hub
それから
hub pull-request [-focp] [-b <BASE>] [-h <HEAD>]
Gitのプロキシとして機能するに加えてgithub/hub
、現在(2020年2月)には次のものがあります。cli/cli
「コマンドラインエクスペリエンスを強化する:GitHubCLIがベータ版になりました」を参照してください。
プルリクエストを作成する
ブランチを作成し、問題で説明されているバグを修正するためにいくつかのコミットを行い、ghを使用してプルリクエストを作成し、貢献を共有します。
GitHub CLIを使用してプルリクエストを作成することで、まだフォークがない場合は自動的にフォークを作成し、ブランチをプッシュしてプルリクエストを作成し、変更をマージします。
そして2020年4月:「GitHubCLIはプルリクエストとカスタム設定の自動入力をサポートするようになりました」
GitHub CLI 0.7は、ベータユーザーから提供されたフィードバックから、最も要望の多かった拡張機能のいくつかを備えています。
前回のマイナーリリース0.6以降、3つの主な機能があります。
gh
でお好みのエディタを使用するように設定しますgh config set editor [editor]
。- デフォルトでSSHに設定
gh
しますgh config set git_protocol ssh
。
デフォルトのGitプロトコルはHTTPSです。- コミットからのプルリクエストのタイトルと本文を。で自動入力します
gh pr create --fill
。
それで:
gh pr create --fill
単純なエイリアスを使用してプルリクエストを作成していますが、
alias pr='open -n -a "Google Chrome" --args "https://github.com/user/repo/compare/pre-master...nawarkhede:$(git_current_branch)\?expand\=1"'
私は自分で作ることになりました、私はそれが周りにあった他の解決策よりよく働くことがわかります。
私は最近、あなたが望むことを正確に実行するツールを作成しました:
https://github.com/jd/git-pull-request
リポジトリのフォーク、PRのプッシュなど、すべてを1つのコマンドで自動化します。また、PRを編集/修正する必要がある場合は、PRの更新もサポートします。
私は以前にこのツールを使用しました-最初に問題を開く必要があるようですが、githubの問題追跡を使用すると、非常に便利でワークフローが本当に合理化されます。git open-pullすると、現在のブランチまたは選択したブランチからプルリクエストが送信されます。 https://github.com/jehiah/git-open-pull
編集:その場で問題を作成できるように見えるので、このツールは優れたソリューションです。
githubの公式CLIをインストールして、PRを作成したり、他の種類のことを実行したりできます。
設定する:
gh auth login
PRを作成するには:
gh pr create
マージするには:
gh pr merge
はい。ハブCLIユーティリティをインストールできます。
MACOSの場合:brew install hub
ログインには1回限りのGitHubトークンが必要です。
User -> Dev settings -> Personal tokens -> Generate
(https://github.com/settings/tokensを参照してください)
git checkout -b mybranch
hub pull-request -b master -h mybranch
#user: your_user_name
#password: your_git_token