git push / pull 時にパスフレーズを聞かれないように設定し直す(パスフレーズの変更)

まだ可愛らしかったGit初心者のあのころ。

Gitのインストール方法を解説したサイトで、「パスフレーズは設定した方がいい」と書かれていたので僕はその通りにしました。 当時はパスフレーズが何かもわからない純真無垢でした。

しかし、時が経ちgitを使っていく中で思ったのです。

「PushやPullするたびにパスフレーズを求められるのめんどくせえ」

と。

設定の変更方法を探すのが面倒で避けてきましたが、いよいよ我慢できなくなったので設定し直しました。

今回はパスフレーズを空に設定し直し、ssh接続の初期設定時にパスフレーズを設定しなかったのと同じ状態にします。

これで Enter passphrase と聞かれずに済みます。

やり方

パスフレーズの変更を行います。

ターミナルやコマンドプロンプトを開いて

>ssh-keygen -p

と入力します。

すると、

Enter file in which the key is (C:\Users\user/.ssh/id_rsa):
Enter old passphrase:

と表示されて、変更前のパスフレーズを聞かれるので、入力してエンターを押します。

すると、新しく設定するパスフレーズを聞かれます。

2回聞かれるので、2回とも何も入力せずにエンターを押します。

Key has comment 'adress@mail.com'
Enter new passphrase (empty for no passphrase):
Enter same passphrase again:

これで完了です。

完了すると以下のように表示されます。

Your identification has been saved with the new passphrase.

もうPush時にパスフレーズを聞かれることはありません。

>git add .

>git commit -m "update readme"
[master 9v000g3c] update readme
 1 file changed, 3 insertions(+)
 
 >git push origin master
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 4 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 320 bytes | 320.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0)
remote: Resolving deltas: 100% (2/2), completed with 2 local objects.
To github.com:y0000y/ooooo.git
   200009b..9000g3c  master -> master

もし、普通にパスフレーズを別のものに変更したいだけであれば、Enter new passphrase と聞かれたときに新しく設定するパスフレーズを入力してください。

まとめ

PushやPullするたびにパスフレーズを求められるのが面倒と思ってパスフレーズを入力しなくてよくなる方法を調べてみると、思っていた情報がなかなか見つかりませんでした。

なんか、リポジトリの中でごにょごにょしてパスフレーズを入力しなくていいようにするなどの情報はありましたが、僕のやりたいことではなかったです。

僕がやりたかったのは、Githubとのssh接続初期設定時にパスフレーズを間違って設定してしまった行動自体をなかったことにしたかったのです。

パスフレーズを設定してくれと言われたときに、何も入力せずにエンターを2回押していたかった。

そんなわけですごく単純なことですが、ブログに残しておきます。