GitHub: パブリックリポジトリのフォークを非公開にするにはどうすればいいですか? 質問する

GitHub: パブリックリポジトリのフォークを非公開にするにはどうすればいいですか? 質問する

パブリック リポジトリをフォークして、フォークをプライベートにするにはどうすればよいでしょうか? プライベート リポジトリをサポートするためのサブスクリプションを持っています。

ベストアンサー1

答えは正しいですが、パブリック リポジトリとフォーク間でコードを同期する方法については触れられていません。

完全なワークフローは次のとおりです(オープンソース化する前にこれを実行しました)リアクトネイティブ):


まず、他の人が言ったようにリポジトリを複製します(詳細ここ):

新しいリポジトリ( と呼ぶことにしますprivate-repo)を作成します。Github UI。 それから:

git clone --bare https://github.com/exampleuser/public-repo.git
cd public-repo.git
git push --mirror https://github.com/yourname/private-repo.git
cd ..
rm -rf public-repo.git

作業できるようにプライベート リポジトリをクローンします。

git clone https://github.com/yourname/private-repo.git
cd private-repo
make some changes
git commit
git push origin master

パブリックリポジトリから新しいホットなものを取得するには:

cd private-repo
git remote add public https://github.com/exampleuser/public-repo.git
git pull public master # Creates a merge commit
git push origin master

素晴らしいです。プライベート リポジトリには、パブリック リポジトリの最新のコードと変更内容が反映されました。


最後に、プル リクエストを作成するには、プライベート リポジトリ -> パブリック リポジトリを使用します。

GitHub UI を使用して、パブリック リポジトリのフォークを作成します (パブリック リポジトリ ページの右上にある小さな [フォーク] ボタン)。次に、次の手順を実行します。

git clone https://github.com/yourname/the-fork.git
cd the-fork
git remote add private_repo_yourname https://github.com/yourname/private-repo.git
git checkout -b pull_request_yourname
git pull private_repo_yourname master
git push origin pull_request_yourname

これで、Github UIからpublic-repoのプルリクエストを作成できるようになりました。ここ

プロジェクト所有者がプルリクエストを確認すると、それをマージできるようになります。

もちろん、プロセス全体を繰り返すこともできます (リモートを追加する手順を省略するだけです)。

おすすめ記事