gitを使っていて面倒くさいことの一つに、git pull / git pushなど、リモートリポジトリとのやりとりにパスワードの入力が毎回必要になることがあげられるかもしれません。Macでssh接続を使っているならば、自動的にキーチェインに格納されたパスワードを使ってくれて便利なのですが、http接続の場合毎回パスワードを入力する必要がありめんどくさい…。
今までこう思っていました。実はhttp接続でもパスワード入力を省略することができます。それには「git-credential-osxkeychain」を使います。ただパスワード入力が省略できるだけではなく、キーチェインにパスワードを保存してくれるので安全です。
インストール
Mac環境では「brew install git
」または、「port install git
」でgitをインストールすると、git-credential-osxkeychainが自動的にインストールされます。
git config
コマンドで自動的に使用されるように設定します。
git config --global credential.helper osxkeychain
すると、pullやpushの最初の1回目だけユーザー名とパスワードを入力すれば、以降はパスワード入力を省略できます!!
まとめ
例えばGitHubクローンのGitBucketをVPS等に設置して運用する場合、別途sshポートを公開するのはセキュリティ上望ましくないため、http接続のみで使いたい場合が考えられます。このような場合、http接続でもパスワード入力を省略できるgit-credential-osxkeychainを設定しておけば、毎回の作業効率が格段に向上するでしょう。
ちなみに、「git を https 経由で使うときのパスワードを保存する」によると、git-credentialには、git-credential-store、git-credential-cache、git-credential-osxkeychain、git-credential-winstore、git-credential-gnomekeringというバリエーションがあるようです。今回は調べていませんが、Windowsユーザーの方もパスワード入力を省略する方法はありそうです。