Hari-hari ini ketika saya membuat repositori baru di GitHub pada halaman setup yang saya dapatkan:
git remote add origin https://github.com/nikhilbhardwaj/abc.git
git push -u origin master
Dan setiap kali saya harus menekan komit, saya harus memasukkan nama pengguna dan kata sandi GitHub saya.
Saya bisa mengubahnya secara manual ke
[email protected]:nikhilbhardwaj/abc.git
di .git/config
. Saya menemukan ini cukup menjengkelkan - apakah ada cara saya dapat mengkonfigurasi git untuk menggunakan SSH secara default?
insteadOf
trick telah ada sejak setidaknya tahun 2012. Juga lihat Bagaimana mengkonversigit:
url kehttp:
url .Jawaban:
Atur cabang asal repositori menjadi SSH
Halaman pengaturan repositori GitHub hanyalah daftar perintah yang disarankan (dan GitHub sekarang menyarankan menggunakan protokol HTTPS). Kecuali Anda memiliki akses administratif ke situs GitHub, saya tidak tahu cara untuk mengubah perintah yang disarankan.
Jika Anda lebih suka menggunakan protokol SSH, cukup tambahkan cabang jarak jauh seperti itu (yaitu gunakan perintah ini sebagai pengganti perintah yang disarankan GitHub). Untuk memodifikasi cabang yang ada, lihat bagian berikutnya.
Ubah repositori yang sudah ada sebelumnya
Seperti yang sudah Anda ketahui, untuk mengganti repositori yang sudah ada untuk menggunakan SSH alih-alih HTTPS, Anda dapat mengubah url jarak jauh di dalam
.git/config
file Anda .Cara pintas adalah dengan menggunakan
set-url
perintah:Informasi lebih lanjut tentang sakelar SSH-HTTPS
sumber
set-url
bantu saya! Terima kasih banyak !GitHub
BitBucket
Itu memberitahu git untuk selalu menggunakan SSH daripada HTTPS saat menghubungkan ke GitHub / BitBucket, jadi Anda akan mengotentikasi berdasarkan sertifikat secara default, alih-alih diminta kata sandi.
sumber
url.<base>.insteadOf
.git config --global [email protected]:.insteadOf https://github.com/
bekerja di git 2.7.4.)--global
dan melakukan ini berdasarkan pr repo.The respon yang diberikan oleh Trevor benar .
Tapi di sini adalah apa yang dapat Anda tambahkan langsung ke
.gitconfig
:sumber
[url "ssh://[email protected]/"]
insteadOf = https://gitlab.com/
Ada jugapushInsteadOf
jika Anda ingin memengaruhi URL push tetapi tidak mengambil. Dapat digunakangit remote -v
untuk memeriksa URL efektif yang akan digunakan git.Anda mungkin secara tidak sengaja menduplikasi repositori di https alih-alih ssh. Saya telah membuat kesalahan ini beberapa kali di github. Pastikan Anda menyalin tautan ssh di tempat pertama saat kloning, alih-alih tautan https.
sumber
Anda harus mengkloning di ssh bukan di https.
Untuk itu Anda perlu mengatur kunci ssh Anda. Saya sudah menyiapkan skrip kecil ini yang mengotomatiskan ini:
dan jalankan seperti
Ubah url jarak jauh Anda
Tambahkan konten
~/.ssh/github.com_rsa.pub
ke kunci ssh Anda di github.comPeriksa koneksi
sumber
File SSH
Edit reponame / .git / config
sumber