ググルとすでにいくつか出てくるネタですがやってみました。意外と簡単。僕の場合は以下のようにして変更しました。
| 変更前 | 変更後 |
|---|---|
delphinus35 |
delphinus |
35 は昔なんとなく付けたものなので特に理由もなかったのですが、GitHub の Name Squatting Policy(ユーザー名不法占拠ポリシー?)を読むと以下のようにありました。
(抄訳)GitHub のユーザー名は早いもん勝ち、かつ、活溌に使ってる人のものです。使いもしない人がユーザー名を占有するのは許されません。余り使われていないアカウントは GitHub スタッフの裁量によって名前を変更されたり、削除されたりします。でも、活動状況が全て公開されてるわけではないことにも注意してね。
お金で売買しちゃダメよ、とかも書いてありますがそこは省略。
実際に変えてみる
使いたいユーザー名のプロフィールページ(https://github.com/delphinus)を見ると、activity が全くなし、どう見ても取っただけの放置アカウントでした。もっとも、上にも書いてありますとおり、activity は非公開にも出来ますから確実ではないですけどね。
というわけで、support@github.com 宛てに、以下のようにメールしました。
Hi,
My name is delphinus. I have a GitHub account
delphinus35https://github.com/delphinus35, but I want to use the accountdelphinusthat is the same as my handle name.I see the profile page https://github.com/delphinus, and I found the account
delphinusis inactive. Can you release this account for me to use this?Thanks.
送ってから 10 時間ほどで以下のようなメールが到着。
(抄訳)ついてるね!(You're in luck!)「Name Squatting Policy」に照らし合わせてみても、
delphinusは不活溌アカウント(inactive account)と認められそうです。
delphinusは既に解放したので、自由に使ってね。
いつも思うけど、海外サービスのサポートアカウントってなんでこんなにカジュアルなんだろう。
というのは置いておいて、この時点で https://github.com/delphinus は 404。アカウントは誰でも取得できる状態になっているので、アカウント設定ページの Change username をクリックして変更しました。
変えるとどうなるの?
この時点で元のプロフィールページ(https://github.com/delphinus35)は 404 になるのですが、レポジトリーへの push は変わらずに出来ます。どういう仕組みなの? と思ってググルと What happens when I change my username?(ユーザー名を変えるとどうなるの?)に以下のような記述がありました。
(抄訳)ユーザー名を変えると GitHub はレポジトリーへの参照を自動的にリダイレクトします。又、Web 上のリポジトリーへのリンクについても以前と同じように動作します。(訳注:プロフィールページ https://github.com/ユーザー名 は 404 になります)
古いリポジトリーへの push も問題なく動きますが、速やかに新しいユーザー名を使った URL に変えることをオススメします。なぜなら、元のユーザー名を他人が取得した場合、その人はあなたと同じ名前のリポジトリーを作ることが出来、以後の参照は全てそちらを向くことになるからです。
とまあ、結構融通の利く実装になっているようです。太字にした部分には注意が必要ですが、鍵が違うので push や pull は出来なくなるんじゃないですかね。多分。
とはいえ念のため、以下のようにして、URL を変えておきましょう。
$ git remote -v
origin git@github.com:delphinus35/dotfiles (fetch)
origin git@github.com:delphinus35/dotfiles (push)
$ git remote set-url origin git@github.com:delphinus/dotfiles
まとめ
ユーザー名が決して早いもん勝ちではないことは Web サービスとしては珍しいですね。GitHub はターゲットが開発者であることと、個人の認証は登録した鍵によることから、ユーザー名に固執する必要はない、という判断なのでしょう。
ついでにこれを機に、Qiita のユーザー名も delphinus に変えておきました(こっちは単に未取得なだけだった)。他の SNS も GitHub 位カジュアルにユーザー名変えれたらいいのにな〜。