背景
- 使用していたライブラリがアーカイブされてしまった😭
- 代替パッケージへの乗り換えはコスト高くて難しい🤔
- いつ削除されるか分からなくて怖い😱
- ライブラリをメンテナンスしたい💪
フォークしていれば、リポジトリは残る
アーカイブされたリポジトリは一定期間で削除されてしまう可能性があります。
数年後リポジトリが消えていきなり動かなくなったことを考えるとめちゃ怖い。
プライベートリポジトリを削除すると、そのフォークもすべて削除されます。
パブリックリポジトリを削除しても、そのフォークは削除されません。
フォークしとけば、上流リポジトリが消されても安心みたい!
(プライベートリポジトリに変更した上で削除されたらどうなってしまうんやろか...?🤨)
手順
例として package/foo
のパブリックリポジトリをforkして mycompany/foo
のリポジトリを作った場合の手順になります。
package/foo をアンインストールする
$ composer remove package/foo
composer.json を変更する
{
"repositories": [
{
"name": "package/foo",
"type": "vcs",
"url": "https://github.com/mycompany/foo"
}
],
... 省略
}
package/foo をインストールする
$ composer require package/foo
これでフォークしたリポジトリをインストールできます😆