0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

forkしたGitリポジトリの扱い

Posted at

想定

fork元は不特定多数の人からのプルリクエストにより更新される。
自分のリポジトリは基本自分のみが作業する。
自分もfork元にcontributeするには

  • クローンしたリポジトリを更新する
  • クローン元に対してプルリクエストを出す

という手順を踏む

クローン

自分のリポジトリをクローン

git clone https://github.com/****/Hello-World.git

remote設定

remoteにfork元追加

git remote add upstream https://github.com/octocat/Hello-World.git

ただしこれではpush先としても登録されてしまう。

git remote -v
upstream    https://github.com/octocat/Hello-World.git (fetch)
upstream    https://github.com/octocat/Hello-World.git (push)
origin    https://github.com/****/Hello-World.git (fetch)
origin https://github.com/****/Hello-World.git (push)

もちろんpush時にoriginを指定していれば問題ないが、万が一があるのでupstreamへのpushを行わないようにする。

git remote set-url --push upstream ""

upstreamのpushが空白となる

git remote -v
upstream    https://github.com/octocat/Hello-World.git (fetch)
upstream     (push)
origin    https://github.com/****/Hello-World.git (fetch)
origin https://github.com/****/Hello-World.git (push)

fork元の変更を取り込む

fork元の最新(mainブランチ)を取得

git fetch upstream/main

ローカルにマージする

git merge upstream/main
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?