- Published on
テンプレートから作成したリポジトリを、本家リポジトリに追従する
- Authors
- Name
- Satoshi Oikawa
- https://x.com/oikwsat
モチベーション
このブログは https://github.com/timlrx/tailwind-nextjs-starter-blog のテンプレートから作成したのですが、だいぶ時間が経ったので本家の変更を取り込みたいと思いました。
やったこと
GitHub で Fork/clone したリポジトリを本家リポジトリに追従する - Qiita の記事を見つけて「本家リモート upstream を追加する方法」を行いました。
oikawa.dev % git remote add template https://github.com/timlrx/tailwind-nextjs-starter-blog
oikawa.dev % git fetch template
From https://github.com/timlrx/tailwind-nextjs-starter-blog
* [new branch] master -> template/master
oikawa.dev % git merge template/master
fatal: refusing to merge unrelated histories
そのままの手順だと merge コマンドでエラーになりました。 テンプレートで作成したリポジトリなので、コミットログがないためですね。
merge コマンドに --allow-unrelated-histories
オプションを付けて再実行します。
oikawa.dev % git merge template/master --allow-unrelated-histories
コンフリクトがたくさん出るので解決してマージコミットして完了できました。
やりたいことはできたんですが、この方法だと本家の大量のコミットログも追加されてしまうので、テンプレートリポジトリのメリットが少し薄れてしまうなぁとなりました。 もっといい方法がありそうなんですが、あまり実行頻度が高い作業でもないので一旦良しとしたいと思います。