GitHubでリモートリポジトリをフォーク(Fork)する方法
■フォーク(Fork)とは
フォーク(Fork)は、GitHubが提供する機能のひとつです。
GitHubで公開されているいずれかのリポジトリを親リポジトリとして指定し、そのコピーを自分のリモートリポジトリとしてGitHub上に作成します。
フォークはもともとのGitの機能ではないためフォーク元のリポジトリと自分のリポジトリはそれぞれ独立しており、GitHubがフォーク元、フォーク先という繋がりを管理しています。
そのためリポジトリをフォークしたからといって勝手に親リポジトリの内容を変更できるわけではありません。親リポジトリに変更内容を反映するにはコミット権限を与えてもらうか、プルリクエストを送って管理者に変更内容を承認してもらう必要があります。
■フォーク(Fork)のやり方
他人のリポジトリを自分のGitHubアカウントにフォークする
・GitHubのサーチ欄に「meganein9988/mgnknowledge-learn-git」を書き込み、サーチを実行する
下記のように「meganein9988」さんのGitHubが表示されたら、「Fork」ボタンを押すだけ
Create a new forkが表示されたら
「Owner」と「Repository」を確認して、「Create fork」ボタンを押す
自分のGitHubに「mgnknowledge-learn-git」リポジトリがコピーされたら、完了
■リモートリポジットからローカルリポジットへ
・クローンしたいフォルダーにカレントを移す
PS D:\Git\rebase_test> cd d:\Git
・クローンする前にフォークした「mgnknowledge-learn-git」リポジトリのコードをコピーする
・クローンする
PS D:\Git> git clone git@github.com:shyokuanjin/mgnknowledge-learn-git.git
Cloning into 'mgnknowledge-learn-git'...
remote: Enumerating objects: 15, done.
remote: Total 15 (delta 0), reused 0 (delta 0), pack-reused 15
Receiving objects: 100% (15/15), done.
Resolving deltas: 100% (1/1), done.
PS D:\Git>
ローカルリポジットに 「mgnknowledge-learn-git」がコピーされる
・ファイルを開く
■プルリクエスト
・ファイル「README.md」に、下記のようにテキストを追加する
「プルリクエストを試してしました。
成功するかなぁ」
・再び、ファイル「README.md」を自分のリモートリポジットにpushし、「Pull requests」を押す
・「New pull request」ボタンを押す
・「meganein9988/mgnknowledge-learn-git」が表示される
・完成
※コメント投稿者のブログIDはブログ作成者のみに通知されます