GitHubでtagをmasterにする

概要

GitHub上のOSSをフォークして開発したい。
でも、フォーク元のmasterではなくtagから派生させたい。
ので自分のリポジトリ(フォーク先)ではtagをmasterにする手順。

手順

リポジトリをForkする

GitHubから普通にForkするだけ

tagを開発ブランチとしてpushする

cloneした後、tagを確認する

git tag -l

tagからブランチを作成する

git checkout -b ${ブランチ名} refs/tags/${タグ名}

作成したブランチをpushしておく

masterブランチを削除する

GitHubではdefaultブランチがmasterになっている。
そしてdefaultブランチは削除できないのでGitHubの画面から変更する。
変更先はtagから作成したブランチ。

[settings]→[branches]→[Default branch]

masterを削除する
※削除せずにリネームでも良い

git push origin :master
tagから作ったブランチをmasterにする

ローカルのブランチ名変更

git branch -m hoge master

リモートに反映。

git push origin master

GitHubでdefaultブランチをmasterに変更する。
実質的には別名同ブランチが存在する状態になるので、不要なブランチ等は必要に応じて削除する。
(ローカルもリモートも)

参考