Micah Henning'in bu konudaki makalesinde ( Git Kimliklerini Ayarlama konusuna bakın) şeklini çok beğendim . Oluşturulan / klonlanan her depoya kimliği uygulayıp zorlaması, her seferinde bunu ayarlamayı unutmamak için iyi bir yoldur.
Temel git yapılandırması
Git'teki mevcut kullanıcı yapılandırmasını kaldır:
$ git config --global --unset user.name
$ git config --global --unset user.email
$ git config --global --unset user.signingkey
Her yeni yerel depoda kimlik yapılandırmasını zorlayın:
$ git config --global user.useConfigOnly true
identity
Komut için Git takma adı oluşturun , daha sonra kullanacağız:
$ git config --global alias.identity '! git config user.name "$(git config user.$1.name)"; git config user.email "$(git config user.$1.email)"; git config user.signingkey "$(git config user.$1.signingkey)"; :'
Kimlikler oluşturma
GPG ile bir kimlik oluşturun (kullanın gpg
veya gpg2
sisteminizde ne olduğuna bağlı olarak). Kullanmak istediğiniz her kimlik için sonraki adımları tekrarlayın.
Not: [keyid]
İşte oluşturulan gizli anahtarın tanımlayıcısı . Örnek burada:
sec rsa4096/8A5C011E4CE081A5 2020-06-09 [SC] [expires: 2021-06-09]
CCC470AE787C057557F421488C4C951E4CE081A5
uid [ultimate] Your Name <youremail@domain>
ssb rsa4096/1EA965889861C1C0 2020-06-09 [E] [expires: 2021-06-09]
8A5C011E4CE081A5
Bölüm sonra sec rsa4096/
ise tanımlayıcı anahtarın.
$ gpg --full-gen-key
$ gpg --list-secret-keys --keyid-format LONG <youremail@domain>
$ gpg --armor --export [keyid]
Genel anahtar bloğunu kopyalayın ve GitHub / GitProviderOfChoice ayarlarınıza GPG anahtarı olarak ekleyin.
Git yapılandırmasına kimlik ekleyin. Ayrıca eklemek istediğiniz her kimlik için bunu tekrarlayın:
Not: Burada kullandığım gitlab
için isim kimliğimi ancak sorudan o şey, eski olabilir: gitolite
ya github
, work
vb
$ git config --global user.gitlab.name "Your Name"
$ git config --global user.gitlab.email "youremail@domain"
$ git config --global user.gitlab.signingkey [keyid]
Depo için kimlik kurulumu
Yeni bir deponun ilişkilendirilmiş kimliği yoksa, kaydetme sırasında size onu ayarlamanızı hatırlatan bir hata görünecektir.
*** Please tell me who you are.
## parts of message skipped ##
fatal: no email was given and auto-detection is disabled
Yeni bir depoda istediğiniz kimliği belirtin:
$ git identity gitlab
Artık gitlab kimliğiyle işlemeye hazırsınız .