Tôi là nhà phát triển và tôi thường ký cam kết Git của mình bằng khóa GPG. Tôi đã có thể khiến GPG Agent hoạt động chính xác trên OSX để nó chỉ hỏi tôi mật khẩu một lần mỗi ngày, nhưng tôi gặp vấn đề khi sử dụng cùng một thứ trên Ubuntu 16.04.
Đây là những gì tôi đang làm:
- Tôi đã thiết lập khóa GPG / v.v.
- Tôi đang ở trong một thư mục Git.
- Tôi thêm một số tập tin vào Git.
Sau đó tôi đi đến cam kết chúng (
git commit
) và nhận được yêu cầu mật khẩu GPG giống như thế này:$ git ci You need a passphrase to unlock the secret key for user: "Randall Degges <r@rdegges.com>" 4096-bit RSA key, ID 8F700DA2, created 2016-04-05 [master 1740961] blah 1 file changed, 1 insertion(+)
Vấn đề là: mỗi lần tôi thực hiện một cam kết, tôi lại được nhắc nhập lại mật khẩu GPG của mình.
Những gì tôi muốn làm là cấu hình GPG Agent để lưu mật khẩu của tôi trong 1 ngày, do đó chỉ cần nhập một lần.
Tôi đã đọc qua hàng tấn tài liệu và bài đăng trên blog, và đây là những gì tôi đã thử cho đến nay ...
Đầu tiên, tôi đã sửa đổi ~/.zshrc
tệp của mình (tôi sử dụng zsh) để đặt như sau:
# GPG Agent
export GPG_TTY=$(tty)
export GPGKEY=8F700DA2
Bây giờ, từ những gì tôi đọc được, điều này một mình nên thực hiện thủ thuật sau khi khởi động lại gpg-agent, nhưng không được.
Vì vậy, điều tiếp theo tôi làm là tôi đã xác định một ~/.gnupg/gpg-agent.conf
tệp như được giải thích trong man gpg-agent
trang:
# Set the default cache time to 1 day.
default-cache-ttl 86400
default-cache-ttl-ssh 86400
# Set the max cache time to 30 days.
max-cache-ttl 2592000
max-cache-ttl-ssh 2592000
Điều này cũng không có tác dụng.
Tôi cũng đã thử các phương pháp blog khác nhau, v.v., nhưng dường như không có gì hoạt động. Ai đó có thể cho tôi một số gợi ý cho những thứ tôi có thể đang thiếu?