GitHubのユーザー名を変更してみた
この前 GitHub のユーザー名を変更したので、メモがてら書いておきます。
自分は以下の懸念事項があって今までなかなか行動に移せていなかったのですが、今回無事に変更できたので似たような心配をしている人の参考になれば幸いです。
とりあえずユーザー名を変更してみる
ユーザー名の変更自体は簡単です。 GitHubの自分のプロフィールページにアクセスして、以下のどちらかをクリックすればプロフィール編集画面にいけます。
で、そこから Account Settings → change username でユーザー名を変更するだけ。
ここで怖いポップアップが出てくるのですが、逃げてはいけません。
別にリポジトリも Gist も消されたりはしません。 ただ「お前のリポジトリのリダイレクトは設定してやるけど、お前の旧プロフィールページとか他のページはどうなっても知らねえよ?」って言われてるだけです。
https://github.com/old_username/repository_name
にアクセスしたら
https://github.com/new_username/repository_name
にリダイレクトされますが、
https://github.com/old_username
にアクセスしても Not Found になるので注意。
I understand してしばらく待つとユーザー名の変更が完了します。
git config user.name の設定
自分の PC 側で git のユーザー名を設定している場合はこちらも変更しておきます。
$ git config --global user.name 'new_username'
これで OK。
$ git config --global -l
で確認できます。
GitHub Helpもあるので参考にしてみてください。
過去に git clone したローカルのリポジトリ達のケア
これは数が多い場合はだるいですが、やること自体は簡単です。
$ cd ローカルリポジトリ
$ git remote -v
# 変更前
origin git@github.com:old_name/repository_name.git (fetch)
origin git@github.com:old_name/repository_name.git (push)
$ git remote set-url origin git@github.com:new_name/repository_name.git
$ git remote -v
# 変更後
origin git@github.com:new_name/repository_name.git (fetch)
origin git@github.com:new_name/repository_name.git (push)
これでgit fetch
とかgit push
が問題なくできれば OK です。
homesick の再設定
自分は.vimrc
やら.zshrc
やらの設定ファイルをhomesick
を使って管理しているのですが、こいつも設定し直さないといけません。homesick
の使い方はこちらの記事などを参考にしてみてください。
ここからが本題の再設定(といっても先ほどと同じことするだけですが)。~/.homesick/repos/dotfiles
にhomesick clone
したリポジトリがあります。homesick clone
とはいえ所詮git clone
なので先ほどと同じように remote の url を設定します。
$ cd ~/.homesick/repos/dotfiles
# 先ほどと同様にリポジトリのパスを変更
$ git remote set-url origin git@github.com:new_name/dotfiles
$ cd ~
$ homesick pull
$ homesick symlink dotfiles
# 設定できてるか確認
$ homesick list
dotfiles git@github.com:new_name/dotfiles
これで再設定が完了します。
他にも一旦ローカルの dotfiles リポジトリを消して、
$ homesick clone new_name/dotfiles
するのもありかと思いますが、一旦設定が消えてツラかったり、初期に設定される remote の url がssh
のものではなくhttps
のものだったりするので普通にgit remote set-url
するほうがいいと思います。
まとめ
こんな感じでサクッと変更できるので、ダサいユーザー名をつけて激しく後悔してる人はぜひかっこいいユーザー名に変更してみてください。