1

私は 9 人のチーム サイズでプロジェクトに取り組んでおり、すべてのコードはパブリック リポジトリとして私の GitHub アカウントにあります。私はマスター ブランチを所有しており、私のチーム メンバーはそれをフォークしており、彼らはプロジェクトに取り組み、行った変更に対してプル リクエストを作成しています。

これは Java プロジェクトであり、Egit で Eclipse (Juno) を使用しています。これまでのところ、ワークフローはすべてのメンバーによって理解されています。

  • コード。
  • 変更をコミットします。
  • アップストリームにプッシュ ([プロジェクト] > [チーム] から)
  • GitHub でプル リクエストを作成します。
  • 要求された変更は (私によって) マスター ブランチにマージされます。
  • メンバーはシェルから実行し、次にgit fetch upstreamEclipseから実行します ([プロジェクト] > [チーム] メニュー)。git merge upstream/masterPush to Upstream

また、メンバーはすでにフォークをマスター ブランチと同期していることにも注意してください。git remote add upstream https://github.com/me/MyProject.git

私の側では、プル リクエストに遭遇したときに、GitHub.com からのマージを確認しPullてから Eclipse からのマージを確認するだけです。

現在、すべて正常に動作していますが、プロジェクト全体をプライベート リポジトリに移動する必要があります (各メンバーは、独自のプライベート リポジトリ内にプロジェクトの独自のブランチを持ちます)。レポを非公開にすると、レポをフォークしたすべてのメンバーが失われることを理解しています。

では、どうすればすべてのリポジトリをプライベートにして、上記の方法で作業を続けることができますか?

ノート:

これは私の最初の GitHub コラボレーション プロジェクトであるため、フォークとブランチの概念全体に不慣れです。チーム メンバーも同様です。

4

1 に答える 1

2

チームメンバーごとにプライベートリポジトリを作成する必要はありません。代わりに、githubで組織を作成し、すべてのチームメンバーを組織に配置してから、すべてのメンバーがアクセスできる組織のプライベートリポジトリを作成します。チームメンバーは、その組織リポジトリで直接作業することも、自己啓発のためのフォークを作成することもできます。

個人のプライベートリポジトリを使用して全員でワークフローを作成することもできますが、プロジェクトのすべてのメンバーが他のすべてのリポジトリを自分のリポジトリのリモートロケーションとして追加する必要があるため、これは非常に面倒です。そして、非常に多くのリポジトリのアクセス権の管理は悪夢になります。

于 2012-10-06T07:57:59.397 に答える