Git 1.8.0はgnome-keyringとの統合をサポートしています。
http://www.h-online.com/open/news/item/Git-1-8-0-can-access-Windows-and-GNOME-keyrings-1733879.html
Gitクレデンシャルヘルパーに関するドキュメントを読んだ後: http://git-scm.com/docs/gitcredentials.html
この新しい機能を使用する方法を見つけることができませんでした。どうすれば統合できますか? ArchlinuxのリポジトリからgitをインストールしたArchlinuxを使用しています。 (git 1.8.0)
Git 1.8.0にはgnome-keyringがサポートされていますが、ご使用のプラットフォーム用にバイナリをコンパイルする必要があります。
これがArchlinuxでそれを解決したものです。
$ Sudo pacman -S libgnome-keyring
$ cd /usr/share/git/credential/gnome-keyring
$ make
$ git config --global credential.helper /usr/share/git/credential/gnome-keyring/git-credential-gnome-keyring
@VonCソリューションは近かったが、git configコマンドは実行可能ファイルを指す必要があります。それが私のために働いていなかった理由です。
@marcosdsanchezの答えはArch(元の質問に答えます)に対するものですが、私はUbuntuを使用しています。 git> = 2.11の場合:
Sudo apt-get install libsecret-1-0 libsecret-1-dev
cd /usr/share/doc/git/contrib/credential/libsecret
Sudo make
git config --global credential.helper /usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret
Git <2.11:の場合
Sudo apt-get install libgnome-keyring-dev
cd /usr/share/doc/git/contrib/credential/gnome-keyring
Sudo make
git config --global credential.helper /usr/share/doc/git/contrib/credential/gnome-keyring/git-credential-gnome-keyring
2016年第4四半期の更新:
Unix、Mac(Git 2.11以降)
git config --global credential.helper libsecret
(「 gnome-keyring
でGit資格情報ヘルパーを使用するとエラーが発生します 」を参照してください)
Windows:
git config --global credential.helper manager
(「 WindowsのGit Bashコンソールでサインアウトする方法? :つまりGit for Windows最新の Microsoft Git Credential Manager for Windows )を使用する
元の回答(2012)
Windows、Mac、およびUnixプラットフォーム用のクレデンシャルヘルパーは、最初に "git-credential-helper" repo 、で導入され、現在はgit distro:
このリポジトリには、
gitcredentials
の一部である(または将来提供される予定の)Gitクレデンシャルヘルパーのセット(git
(7))が含まれます。
$ git clone git://github.com/pah/git-credential-helper.git
$ BACKEND=gnome-keyring # or any other backend
$ cd git-credential-helper/$BACKEND
$ make
$ cp git-credential-$BACKEND /path/to/git/crendential
ビルド時には、/path/to/git/credential
ディレクトリにインストールされます。
このバックエンドを使用するには、次を設定して(グローバル)Git構成に追加できます。
(Unixの場合):
git config --global credential.helper /path/to/git/credential/gnome-keyring/git-credential-gnome-keyring
Windowsに関する注意:
Windows上で実行するプログラムを作成し、「 pypi keyring 0.1 」のようなライブラリを呼び出すことができると思います。
しかし、それはバックエンドであり、Gitから直接使用することはありません。
使用しているのは「資格情報ヘルパー」です(これは Windowsで必要な資格情報API を呼び出します)。
GitHub for Windows はそのようなヘルパーを提供し(... githubと呼ばれる実行可能ファイルとして)、Windowsセッション中に資格情報を保存できます。
「GitHub for Windows」ウィンドウからシェルを起動すると、「git config --system -l」と入力して表示されます。
C:\Users\VonC\Documents\GitHub\test [master +2 ~0 -0 !]> git config --system -l
credential.helper=!github --credentials
credential.helper=!github --credentials
部分は、資格情報ヘルパー 'github
'を呼び出します。
$ git config [--global] credential.helper $BACKEND
Fedoraのだれでも、ジェームズワードの回答を少し編集しました。
Sudo yum install libgnome-keyring-devel
cd /usr/share/doc/git/contrib/credential/gnome-keyring
Sudo make
git config --global credential.helper /usr/share/doc/git/contrib/credential/gnome-keyring/git-credential-gnome-keyring
2018年10月に更新
GNOMEはlibgnome-keyringを廃止し、libsecretに置き換えました。コミット https://github.com/git/git/commit/87d1353a6a 新しい資格情報ヘルパー/ usr/libexec/git-core/git-credential-libsecretが追加されました。
git config --global credential.helper libsecret
次の2行を~/.gitconfig
ファイルに追加するだけです。
[credential]
helper = gnome-keyring
次回Gitからパスワードを求められたとき、入力されたパスワードはGnome Keyringに保存され(seahorse
ツールでこれを見ることができます)、その後パスワードの再入力は求められません。
これは、Gitのバージョンが十分に新しく(2.1.0など)であり、 Linux Fedora、RHEL、またはCentOS。古いバージョンまたは他のOS/distrosについては、他の回答をご覧ください。