駄文。

プログラマーの日常でつまずいたこと・気づいたことなどの記録です

githubで自分のrepositoryをforkできる?

ちょっと、目的が変わったため開発中のrepositoryをforkしようと思った。が、それは簡単には行かなかった。 というか、実際にはできなかったため、代替策で逃げることにした。

ネットで情報を探してもforkを自分のrepositoryにはできないようである。

代替として 自分のrepositoryをimport repositoryしているケースが多いようであった。

ただ、この場合元のrepositoryとの関連付はできないので insights - Network/Forksでコミットを関連付はできないようである。

さて、大体のimport repositoryだがこれも一筋縄でいかなかった。 基本的にはimport元のgithubのURLとimport先のrepository名が決まっていればできるはずだったのだが

最近のセキュリティ対策のためimport元のrepositoryの参照権を取得するためにログインが必要になった。 ただ、これが単にユーザのログインではうまくいかないのである。

調べると ユーザアカウントのアイコンを選択したメニューから settings - Developer Settings - Personal access tokens - Fine-grained tokens を選択し、tokenを作成する必要がある。

token作成時には tokenと紐づけるrepositoryとpermissionを設定する必要がある。今回のimportではRepository Permissions - ContentsにRead-onlyを付与しておけば問題なかった。

トークンを作成した後、import時に求められる認証に対してIDはアカウント、パスワードには今回取得したtokenを指定することでようやくimportできた。

まぁ、ただ面倒でなければcloneしてそれを新規に作成したrepositoryにコピーしても対して変わらない気も(もちろん logが継承できる点ではメリットだが)

ということで今回は目的を100%実現できなかった。