【GitBush】パスフレーズ入力、めんどくさい【大体そんなもん】
始めましての方、初めまして。
それ以外の方、私だ こんにちは。
この記事を読んでできること。
パスフレーズの入力の手間が省けます。
┓作業の流れ┓
⚠︎attention⚠︎
この設定をすると、パスフレーズの入力回数は格段に減ります。
が、パスフレーズを入力しなさ過ぎて忘れては本末転倒なので
必ず、秘密の場所にメモしておいたほうが安心です。
話が脱線しないように頑張ります。
では、行ってみよー!
1.GitBach起動
2.以下のコマンドを入力
vi ~/.bashrc
3.INSERTモードにして、以下の3行を入力
#ssh-agent eval `ssh-agent` ssh-add
4.上書きしてviモードを終了
5.GitBachを再起動
手順は以上です。
今後、GitBachを起動するたびに、最初の1回だけ入力を求められますが
pushしてもssh接続確認してもパスフレーズの入力を求められなくなります。
入力が省略されるのは今現在開いたセッション間のみ。
中には別のセッションでも共用できる方法もあるらしいのですが、
もしかしたら途中でパスフレーズを変更するって場合が無きにしも非ず。
なので、今回は現セッション間のみパスフレーズを省略できるようにしました。
ちなみに、1回起動したssh-agentを別のセッションでも共用したい場合、以下を
3の手順実行時に入力してください。
# test for identities function test_identities { # test whether standard identities have been added to the agent already ssh-add -l | grep "The agent has no identities" > /dev/null if [ $? -eq 0 ]; then ssh-add # $SSH_AUTH_SOCK broken so we start a new proper agent if [ $? -eq 2 ];then start_agent fi fi } # check for running ssh-agent with proper $SSH_AGENT_PID if [ -n "$SSH_AGENT_PID" ]; then ps -ef | grep "$SSH_AGENT_PID" | grep ssh-agent > /dev/null if [ $? -eq 0 ]; then test_identities fi # if $SSH_AGENT_PID is not properly set, we might be able to load one from # $SSH_ENV else if [ -f "$SSH_ENV" ]; then . "$SSH_ENV" > /dev/null fi ps -ef | grep "$SSH_AGENT_PID" | grep -v grep | grep ssh-agent > /dev/null if [ $? -eq 0 ]; then test_identities else start_agent fi fi
お疲れ様でした。