質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

Q&A

2回答

10767閲覧

GithubでのPullrequestについて

Hookclaw

総合スコア32

GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

1グッド

3クリップ

投稿2016/05/19 05:10

Github の Pullrequest に詳しい方にお伺いします。

Githubで公開されているリポジトリをForkし、修正後1つめのPullrequestを送りました。

続けて、同じリポジトリに対して、別のコミットをPullrequestを送りたいのですが、1つめと同じ方法(Github Desktop)でPullrequestを出すことができません。

ブラウザから、Pullrequestを送る方法も見当たりません。

そもそも、同じリポジトリに対して同時に2つ以上のPullrequestを出すことが可能なのでしょうか?
1つめがCloseされるまで送ることはできないということでしょうか?

新たにForkしなおせば、できそうな気もするのですが、差分を作成するたびにForkしているとリポジトリの数が多くなってしまいそうなので、最終手段を行使する前に本来の在り方をお伺いしたいと思い質問させていただきました。

よろしくお願いいたします。

horse_n_deer👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

一般的には一つのpull-requestは一つのブランチに対応しています。

このため、フォークした一つのリポジトリを基にして複数のpull-requestを送信する予定がある場合、フォーク直後の origin ブランチから fix1、fix2 のような pull-request ごとのブランチを作って作業します。(というか、複数 pull-request の予定の有無に関わらず、修正用のブランチを切ってから作業するほうが無難です。)

なお、masterにマージされていない複数のpull-request間で依存性を持つようなケース(fix2の内容がfix1の修正内容を前提としているがfix1がmasterにマージされていないケース)については、元のリポジトリのオーナーが決めた運用ポリシーに従う必要があります。(そのような煩雑なpull-requestが禁止されているケース、逆になるべく細かくpull-requestを出すことが推奨されていて依存性についても細かいルールが決まっているケースなど、いろいろあります)

もし、小規模プロジェクト等で運用ポリシーが決まっていない場合、後発の pull-request のメッセージに "fix1 が前提になっています!!!" というようなことを記載するなどの方法を、元のリポジトリのオーナーと相談する必要があります。

ご参考になれば。

投稿2016/05/19 08:16

tkanda

総合スコア2425

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Hookclaw

2016/05/19 12:41

ありがとうございました。
guest

0

解決しましたので、まとめます。
最終的に以下のような手順で目的を達成しました。
1.すでに発行済みのPullrequestをclose(取り消し)。
2.Forkしたリポジトリを削除。
これで、スタート地点に戻りました。
3.あらためて、Fork。(ブラウザ)
4.必要な数だけブランチを作成。(Github Desktopまたはコマンドライン)
5.修正して、コミット。(Github Desktop)
6.Githubへpush(コマンドライン) git push -u origin ブランチ名
7.Pullrequest発行。(ブラウザ)Github Desktopでは、Fork後のMasterへのPullrequestしか作成できませんでした。
8.ローカルのクローンを次のブランチに切り替え。(Github Desktop)コマンドラインでの方法がわかりませんでしたが、Github Desktopだと簡単でした。
9.5.から繰り返し。

投稿2016/05/21 02:00

編集2016/05/21 02:01
Hookclaw

総合スコア32

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Hookclaw

2016/05/21 02:09

7.の補足。 Fork後のMasterへコミットした差分は、Github Desktopからオリジナルに対してPullrequestを作成できます。
hana-da

2016/10/26 00:20

そしてこの質問をcloseすると最高です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問