75

以前に jockm/vert.x をフォークして、彼にプル リクエストを送信しました。ここで、vert-x/vert.x (jockm/vert.x のアップストリーム) をフォークして、別のプル リクエストを送信したいと考えています。しかし、Fork ボタンをクリックすると、当然のことながら、代わりに jockm/vert.x の tjcrowder/vert.x フォークに行き着きます。各プルリクエストを適切に送信できるように、vert-x/vert.x と jockm/vert.x の両方を同時にフォークすることは可能ですか?

答えは、逆の状況に関するこの質問と同じかもしれないのではないかと心配しています(「GitHub の方法はありませんが、リモート リポジトリを追加できます」)。プルリクエストを新しいリモートに送信できるようになります。

4

6 に答える 6

36

GitHub のやり方はありませんが (小さな嘘です。以下を参照してください)、恐れることは何もありません。

定義上、フォークのフォークオリジナルのフォークです。プル リクエストを開くと、プル リクエストの発信元と宛先の両方を選択するオプションが表示されます。そこで利用可能な選択肢は明らかにフォーク グラフに依存しますが、2 つのリポジトリ間のグラフにパスがある限り、安全なはずです。また、プル リクエストは Web サイト側で実行されるため、git から使用したくない場合は、リモートを追加する必要さえありません。

もちろん、そのグラフでの自分の位置を再考して、実際のアップストリームの直接の子になりたいと思うかもしれませんが、それはほとんど無関係です.

先に述べたように、実際には複数のフォークを持つねじれた方法があります。それは、組織を作成し、その中でフォークすることです。そうすれば、同じグラフで複数のリポジトリを「所有」できます。しかし、そこに行く必要はまったくありません。

于 2012-09-09T13:18:48.853 に答える
18

sigma's answer のおかげで、jockm/vert.x レポジトリでプル リクエストを実行すると、アップストリーム レポジトリだけでなく、アップストリーム レポの他のすべてのフォークも利用できることがわかりました。だから私がやったことは次のとおりでした:

  1. jockm/vert.x のフォークを削除し、代わりに vert-x/vert.x をフォークします。ほとんどの場合、jockm のバージョンではなく、メインのアップストリーム リポジトリ内で作業したいからです。
  2. jockm に送信したいコミット用のブランチと、vert-x に送信したいコミット用の別のブランチを作成します。
  3. 各ブランチに関連する変更を加えます。
  4. jockm/vert.x リポジトリがリクエストの可能なターゲットとしてリストされているため (約 200 の他のフォークと共に)、各ブランチのプル リクエストを関連するリポジトリに送信します。

同じブランチでの後続のコミットはプル リクエストに自動的に追加され、これらの変更はマージされるまで/マージされない限り分離されたままにする必要があるため、これらのコミットがそれらのプル リクエストで唯一のものになるように、別のブランチ (基本的にはトピック ブランチ) を使用しました。

于 2012-09-10T09:20:36.020 に答える
6

より良いオプションは、フォークにブランチを作成し、そのブランチからプル リクエストを作成することです。ブランチを使用してバージョンを「フォーク」できます

于 2012-09-09T13:28:48.677 に答える
0

「複数のフォーク」に関する詳細は見られなかったので、おそらく別の GitHub アカウントを作成することになり、そのアカウントで 2 番目のクローンを作成し、別のプル リクエストをvert.x/vert.x.

「同じコンピューター上に複数の github アカウント」を持つことができるため(ここでも説明されている適切なssh 構成ファイルを使用)、これは可能な回避策です。


ただし、これはGitLab 14.0 (2021 年 6 月)でサポートされていることに注意してください。

フォーク時にデフォルト パスとプロジェクト名を編集する

フォーク時にデフォルト パスとプロジェクト名を編集する

プロジェクトをフォークすると、元のリポジトリの正確なコピーを取得して、実験、変更の適用、および親プロジェクトへのコントリビューションの送信を行うことができます。
フォークには、その目的を説明する意味のある名前を付ける必要があります。プロジェクトが分岐している場合は、1 つのプロジェクトの複数のフォークが必要になる場合があります。

このリリースでは、GitLab は、フォークを作成するときにプロジェクト名とプロジェクト スラッグを直接編集できるようになりました。

同じプロジェクトの複数のフォークを、それぞれ異なる名前で、すべて同じグループに作成できるようになりました!

https://about.gitlab.com/images/14_0/edit_default_path_and_project_name_when_forking.png -- フォーク時のデフォルト パスとプロジェクト名を編集

ドキュメント問題を参照してください。

于 2012-09-09T10:36:24.537 に答える