2016-06-13 16 views
4

私はこのチュートリアルは、次のとおりです。https://help.github.com/articles/signing-commits-using-gpg/gpg:skipped "XXBDXX4E":秘密鍵が利用できません。 GPG:署名に失敗しました:秘密鍵は利用できません

を私はこのようなコミット時にサインインしよう: https://github.com/spring-guides/tut-spring-boot-oauth2/commit/824f418ab9d04114b14a90f7c19b4b8d6dda67b7

enter image description here

が、エラー:

C:\Users\Administrator\Desktop\foo\test_gpg>git commit -m "test" 
gpg: skipped "DABDD34E": secret key not available 
gpg: signing failed: secret key not available 
error: gpg failed to sign the data 
fatal: failed to write commit object 

enter image description here enter image description here enter image description here enter image description here

マイ設定:

C:\Users\Administrator\Desktop\foo\test_gpg>git config --list --show-origin 
file:"C:\\ProgramData/Git/config"  core.symlinks=false 
file:"C:\\ProgramData/Git/config"  core.autocrlf=true 
file:"C:\\ProgramData/Git/config"  core.fscache=true 
file:"C:\\ProgramData/Git/config"  color.diff=auto 
file:"C:\\ProgramData/Git/config"  color.status=auto 
file:"C:\\ProgramData/Git/config"  color.branch=auto 
file:"C:\\ProgramData/Git/config"  color.interactive=true 
file:"C:\\ProgramData/Git/config"  help.format=html 
file:"C:\\ProgramData/Git/config"  http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt 
file:"C:\\ProgramData/Git/config"  diff.astextplain.textconv=astextplain 
file:"C:\\ProgramData/Git/config"  rebase.autosquash=true 
file:"C:\\Program Files\\Git\\mingw64/etc/gitconfig" credential.helper=manager 
file:C:/Users/Administrator/.gitconfig user.name=donhuvy 
file:C:/Users/Administrator/.gitconfig [email protected] 
file:C:/Users/Administrator/.gitconfig user.signingkey=DABDD34E 
file:C:/Users/Administrator/.gitconfig commit.gpgsign=true 
file:C:/Users/Administrator/.gitconfig use.signingkey=DABDD34E 
file:.git/config  core.repositoryformatversion=0 
file:.git/config  core.filemode=false 
file:.git/config  core.bare=false 
file:.git/config  core.logallrefupdates=true 
file:.git/config  core.symlinks=false 
file:.git/config  core.ignorecase=true 
file:.git/config  core.hidedotfiles=dotGitOnly 
file:.git/config  remote.origin.url=https://github.com/donhuvy/test_gpg.git 
file:.git/config  remote.origin.fetch=+refs/heads/*:refs/remotes/origin/* 
file:.git/config  branch.master.remote=origin 
file:.git/config  branch.master.merge=refs/heads/master 
file:.git/config  commit.gpgsign=true 

C:\Users\Administrator\Desktop\foo\test_gpg>gpg --list-key 
C:/Users/Administrator/AppData/Roaming/gnupg/pubring.gpg 
-------------------------------------------------------- 
pub 2048R/DABDD34E 2016-06-10 
uid  [ultimate] donhuvy (Do Nhu Vy) <[email protected]> 
uid  [ultimate] Do Nhu Vy (Do Nhu Vy) <[email protected]> 
sub 2048R/C6B535A2 2016-06-10 

(私は3つのGitHubでのメール登録:[email protected][email protected][email protected]を) 私が間違っていましたか?どのように私のコミットに署名する?

答えて

5

私も同じ問題を抱えていました。残念ながら、エラーメッセージは実際の問題を特定するものではありません... gpg4winと思われる使用しているgpgプログラムを使用するようにgitを構成していないことです[これはWinマシンでのみ発生しました]

git config --global gpg.program "C:/Program Files (x86)/GNU/GnuPG/gpg2.exe" 

下記のコマンドを実行してください。

git config user.signingkey DABDD34E 

多くの場合、端末を再起動する必要があります。 git commitコマンドを再発行してください。

これが役に立ちます。

0

私はWindows 10でTortoiseGITを使用していますが、私は今でも同じ問題を抱えていました。私にとって

この問題を解決:

git config --global gpg.program "c:\Program Files (x86)\GnuPG\bin\gpg.exe" 
関連する問題