user@host:path/to/repoBiçimi giriş yapmak kullanımı ssh Git söyler hostkullanıcı adıyla user. Gönderen git help clone:
Alternatif bir scp benzeri sözdizimi de ssh protokolü ile kullanılabilir:
[user@]host.xz:path/to/repo.git/
'Nin önündeki bölüm @kullanıcı adıdır ve kimlik doğrulama yöntemi (şifre, genel anahtar vb.) Git değil ssh tarafından belirlenir. Git'in ssh'ye bir parola geçirmesi mümkün değildir, çünkü ssh uzak sunucunun yapılandırmasına bağlı olarak bir parola bile kullanamayabilir.
ssh-agentŞifreleri her zaman yazmaktan kaçınmak için kullanın
Ssh parolanızı her zaman yazmak istemiyorsanız, tipik çözüm bir genel / özel anahtar çifti oluşturmak , ortak anahtarı uzak sunucudaki ~/.ssh/authorized_keysdosyanıza koymak ve özel anahtarınızı içine yüklemektir ssh-agent. Ayrıca , Bir kez giriş yapmak için Git'i SSH üzerinden yapılandırma , GitHub'ın ssh anahtar parolaları , gitolit'in ssh belgeleri ve Heroku'nun ssh tuşları belgeleri hakkındaki yardım sayfasına bakın .
GitHub'da (veya Heroku veya ...) birden fazla hesap arasında seçim yapma
GitHub veya Heroku gibi bir yerde birden fazla hesabınız varsa, birden fazla ssh anahtarınız olur (hesap başına en az bir tane). Hangi hesap olarak oturum açmak istediğinizi seçmek için, ssh'a hangi özel anahtarı kullanacağınızı söylemelisiniz .
Örneğin, iki GitHub hesabınız olduğunu varsayalım: foove bar. Sizin ssh anahtarı fooIS ~/.ssh/foo_github_idve için ssh anahtarı barolduğunu ~/.ssh/bar_github_id. Sen erişmek istediğiniz git@github.com:foo/foo.gitsenin ile foohesap ve git@github.com:bar/bar.gitsizin ile barhesaba. Şunlara aşağıdakileri eklersiniz ~/.ssh/config:
Host gh-foo
Hostname github.com
User git
IdentityFile ~/.ssh/foo_github_id
Host gh-bar
Hostname github.com
User git
IdentityFile ~/.ssh/bar_github_id
Daha sonra iki veri havuzunu aşağıdaki gibi klonlayabilirsiniz:
git clone gh-foo:foo/foo.git # logs in with account foo
git clone gh-bar:bar/bar.git # logs in with account bar
SSH'den tamamen kaçınma
Bazı hizmetler ssh'ye alternatif olarak HTTP erişimi sağlar:
GitHub:
https://username:password@github.com/username/repository.git
gitorious:
https://username:password@gitorious.org/project/repository.git
Heroku: Bu destek makalesine bakın .
UYARI : Klon URL'nize şifrenizi eklemek Git'in düz metin şifrenizi saklamasına neden olur .git/config. HTTP kullanırken şifrenizi güvenli bir şekilde saklamak için bir kimlik bilgisi yardımcısı kullanın. Örneğin:
git config --global credential.helper cache
git config --global credential.https://github.com.username foo
git clone https://github.com/foo/repository.git
Yukarıdakiler Git'in her 15 dakikada bir (varsayılan olarak) şifrenizi istemesine neden olur. Ayrıntılar git help credentialsiçin bakınız.