Mencoba untuk mengerjakan repo "kerja" saya yang sebenarnya, dan repo pribadi saya di hub git, dari komputer saya.
Akun kerja dibuat terlebih dahulu, dan semuanya bekerja dengan sempurna.
Akun pribadi saya, namun sepertinya tidak dapat mendorong ke repo pribadi saya, yang dibuat di bawah akun / email yang berbeda.
Saya sudah mencoba menyalin kunci kerja saya ke akun pribadi saya, tetapi itu menimbulkan kesalahan, karena tentu saja kunci hanya dapat dilampirkan ke satu akun.
Bagaimana saya bisa mendorong / menarik ke dan dari kedua akun, dari kredensial github masing-masing?
git
version-control
github
Kevin Whitaker
sumber
sumber
ssh-add ~/.ssh/id_rsa_COMPANY
<br/> untuk memberitahu ssh-agent untuk memasukkannya untuk digunakan. <hr /> Rest berfungsi dengan baik untuk saya dengan tutorial yang disebutkan di atas.Jawaban:
Yang perlu Anda lakukan adalah mengonfigurasi pengaturan SSH Anda dengan beberapa keypairs SSH.
Tautan ini mudah diikuti (Terima kasih Eric): http://code.tutsplus.com/tutorials/quick-tip-how-to-work-with-github-and-multiple-accounts--net-22574
Membuat kunci SSH (Win / msysgit) https://help.github.com/articles/generating-an-ssh-key/
Juga, jika Anda bekerja dengan beberapa repositori menggunakan personas yang berbeda, Anda perlu memastikan bahwa repositori individual Anda memiliki pengaturan pengguna yang diganti:
Menyetel nama pengguna, email, dan token GitHub - Pengaturan utama untuk setiap repositori https://help.github.com/articles/setting-your-commit-email-address-in-git/
Semoga ini membantu.
Catatan: Beberapa dari Anda mungkin memerlukan email berbeda untuk digunakan untuk repositori yang berbeda, dari git 2.13 Anda dapat mengatur email berdasarkan direktori dengan mengedit file konfigurasi global yang ditemukan di:
~/.gitconfig
menggunakan kondisional seperti:Dan kemudian konfigurasi khusus pekerjaan Anda ~ / work / .gitconfig akan terlihat seperti ini:
Terima kasih @alexg karena memberi tahu saya tentang hal ini di komentar.
sumber
Gunakan HTTPS:
ubah url jarak jauh ke https:
dan Anda baik untuk pergi:
Untuk memastikan bahwa komit muncul seperti yang dilakukan oleh USERNAME, seseorang dapat mengatur user.name dan user.email untuk proyek ini, juga:
sumber
user.name
danuser.email
dengan--global
, lakukan saja apa yang dia katakan di atas untuk mengaturnya secara lokal untuk hanya satu repo. Itu memecahkan banyak masalah. Sekarang untuk menghapus repo lama ....Menjadi bugar
Untuk mengelola repo git di bawah github / bitbucket / akun apa pun yang terpisah, Anda hanya perlu membuat kunci SSH baru.
Tetapi sebelum kita dapat mulai mendorong / menarik repo dengan identitas kedua Anda, kami harus membuat Anda menjadi bugar - Mari kita asumsikan sistem Anda diatur dengan pasangan kunci
id_rsa
dan tipikalid_rsa.pub
. Sekarang initree ~/.ssh
penampilanmu seperti iniPertama, beri nama pasangan kunci - menambahkan nama deskriptif akan membantu Anda mengingat kunci mana yang digunakan untuk pengguna / jarak jauh
Selanjutnya, mari kita buat pasangan kunci baru - di sini saya akan memberi nama kunci baru
github-otheruser
Sekarang, ketika kita melihat,
tree ~/.ssh
kita melihatSelanjutnya, kita perlu mengatur
~/.ssh/config
file yang akan menentukan konfigurasi kunci kita. Kami akan membuatnya dengan izin pemilik-baca / tulis-saja yang tepatBuka itu dengan editor favorit Anda, dan tambahkan konten berikut
Agaknya, Anda akan memiliki beberapa repo yang ada yang terkait dengan identitas github utama Anda. Untuk alasan itu, github.com "default"
Host
disiapkan untuk menggunakanmainuser
kunci Anda . Jika Anda tidak ingin memilih satu akun daripada yang lain, saya akan menunjukkan cara memperbarui repo yang ada di sistem Anda untuk menggunakan konfigurasi ssh yang diperbarui.Tambahkan kunci SSH baru Anda ke github
Pergilah ke github.com/settings/keys untuk menambahkan kunci publik baru Anda
Anda bisa mendapatkan konten kunci publik menggunakan: salin / tempel ke github
Sekarang identitas pengguna baru Anda sudah siap - di bawah ini kami akan menunjukkan kepada Anda bagaimana menggunakannya.
Selesaikan semuanya: kloning repo
Jadi bagaimana ini bekerja bersama dengan git dan github? Nah, karena Anda tidak dapat memiliki ayam tanpa dan telur, kita akan melihat kloning repo yang ada. Situasi ini mungkin berlaku untuk Anda jika Anda memiliki akun github baru untuk tempat kerja Anda dan Anda ditambahkan ke proyek perusahaan.
Katakanlah
github.com/someorg/somerepo
sudah ada dan Anda ditambahkan - kloning semudah ituYang tebal bagian harus cocok dengan
Host
nama kita setup di Anda~/.ssh/config
berkas. Itu benar menghubungkan git ke yang sesuaiIdentityFile
dan benar mengotentikasi Anda dengan githubSelesaikan semuanya: membuat repo baru
Karena Anda tidak dapat memiliki ayam tanpa telur dan telur, kami akan melihat penerbitan repo baru di akun sekunder Anda. Situasi ini berlaku untuk pengguna yang membuat konten baru menggunakan akun github sekunder mereka.
Mari kita asumsikan Anda telah melakukan sedikit pekerjaan secara lokal dan sekarang Anda siap untuk mendorong ke github. Anda dapat mengikuti saya jika Anda mau
Sekarang konfigurasikan repo ini untuk menggunakan identitas Anda
Sekarang buat komit pertama Anda
Periksa komit untuk melihat identitas baru Anda digunakan menggunakan git log
Baiklah, saatnya untuk mendorong ke github! Karena github belum tahu tentang repo baru kami, pertama pergi ke github.com/baru dan buat repo baru Anda - beri nama somerepo
Sekarang, untuk mengonfigurasi repo Anda ke "bicara" ke github menggunakan identitas / kredensial yang benar, kami telah menambahkan sebuah remote. Dengan asumsi nama pengguna github Anda untuk akun baru Anda adalah
someuser
...Itu tebal bagian benar-benar penting dan itu harus sesuai dengan
Host
yang kita didefinisikan dalam Anda~/.ssh/config
berkasTerakhir, dorong repo
Perbarui repo yang ada untuk menggunakan konfigurasi SSH baru
Katakanlah Anda sudah memiliki beberapa repo yang dikloning, tetapi sekarang Anda ingin menggunakan konfigurasi SSH baru. Dalam contoh di atas, kami menjaga repo Anda yang ada tetap dalam kebijaksanaan dengan menetapkan pasangan
id_rsa
/id_rsa.pub
kunci sebelumnya keHost github.com
dalam file konfigurasi SSH Anda. Tidak ada yang salah dengan ini, tetapi saya memiliki setidaknya 5 konfigurasi github sekarang dan saya tidak suka menganggap salah satu dari mereka sebagai konfigurasi "default" - Saya lebih suka secara eksplisit tentang masing-masing.Sebelum kita punya ini
Jadi sekarang kami akan memperbarui itu ke ini (perubahan dicetak tebal )
Tetapi itu berarti bahwa sekarang repo yang ada dengan
github.com
remote tidak akan lagi berfungsi dengan file identitas ini. Tapi jangan khawatir, ini adalah perbaikan sederhana.Untuk memperbarui repo yang ada untuk menggunakan konfigurasi SSH baru Anda, cukup buka file konfigurasi git repo dan perbarui url!
Perbarui bidang asal jarak jauh (perubahan dicetak tebal )
Itu dia. Sekarang Anda bisa
push
/pull
sesuka hati AndaIzin file kunci SSH
Jika Anda mengalami masalah dengan kunci publik Anda tidak berfungsi dengan benar, SSH cukup ketat pada izin file yang diizinkan pada
~/.ssh
direktori Anda dan file kunci yang sesuaiSebagai aturan praktis, direktori apa pun seharusnya
700
dan file apa pun harus600
- ini berarti hanya pemilik-baca / tulis-saja - tidak ada grup / pengguna lain yang dapat membaca / menulisnyaBagaimana saya mengelola kunci SSH saya
Saya mengelola kunci SSH yang terpisah untuk setiap host yang saya hubungkan, sehingga jika ada satu kunci yang pernah dikompromikan, saya tidak perlu memperbarui kunci di setiap tempat saya telah menggunakan kunci itu. Ini seperti ketika Anda mendapatkan pemberitahuan dari Adobe bahwa 150 juta informasi pengguna mereka dicuri - sekarang Anda harus membatalkan kartu kredit itu dan memperbarui setiap layanan yang bergantung padanya - sungguh merepotkan.
Begini
~/.ssh
tampilannya direktori saya : Saya punya satu.pem
kunci untuk setiap pengguna, dalam folder untuk setiap domain yang saya hubungkan. Saya menggunakan.pem
kunci jadi saya hanya perlu satu file per kunci.Dan inilah
/.ssh/config
file yang sesuai saya - jelas hal-hal github relevan untuk menjawab pertanyaan ini tentang github, tetapi jawaban ini bertujuan untuk membekali Anda dengan pengetahuan untuk mengelola identitas ssh Anda pada sejumlah layanan / mesin.Mendapatkan kunci publik SSH Anda dari kunci PEM
Di atas Anda memperhatikan bahwa saya hanya memiliki satu file untuk setiap tombol. Ketika saya perlu memberikan kunci publik, saya hanya menghasilkan sesuai kebutuhan.
Jadi ketika github meminta kunci publik ssh Anda, jalankan perintah ini untuk mengeluarkan kunci publik ke stdout - salin / tempel di tempat yang diperlukan
Catatan, ini juga proses yang sama yang saya gunakan untuk menambahkan kunci saya ke mesin jarak jauh. The
ssh-rsa AAAA...
nilai disalin ke remote~/.ssh/authorized_keys
berkasMengonversi pasangan
id_rsa
/id_rsa.pub
kunci Anda ke format PEMJadi Anda ingin menjinakkan Anda file-file kunci dan mengurangi beberapa kesalahan sistem file? Mengubah pasangan kunci Anda menjadi PEM tunggal mudah
Atau, mengikuti contoh kami di atas, kami mengganti nama
id_rsa -> github-mainuser
danid_rsa.pub -> github-mainuser.pub
- jadiSekarang hanya untuk memastikan bahwa kami telah mengonversi ini dengan benar, Anda ingin memverifikasi bahwa kunci publik yang dihasilkan cocok dengan kunci publik lama Anda
Sekarang setelah Anda memiliki
github-mainuser.pem
file Anda, Anda dapat menghapus filegithub-mainuser
dangithub-mainuser.pub
file lama Anda dengan aman - hanya file PEM yang diperlukan; cukup buat kunci publik kapan pun Anda membutuhkannya ^ _ ^Membuat kunci PEM dari awal
Anda tidak perlu membuat pasangan kunci pribadi / publik dan kemudian mengonversi ke kunci PEM tunggal. Anda dapat membuat tombol PEM secara langsung.
Mari kita buat
newuser.pem
Mendapatkan kunci publik SSH adalah sama
sumber
git clone github.com-otheruser:someorg/somerepo.git
perlugit clone [email protected]:someorg/somerepo.git
(menambahkangit@
). Setidaknya, itulah yang saya butuhkan.Host github.com
(baris baru)User git
(baris baru)IdentityFile ...
Dengan membuat alias host yang berbeda untuk github.com di ~ / .ssh / config Anda, dan memberikan setiap host alias kunci ssh sendiri, Anda dapat dengan mudah menggunakan beberapa akun github tanpa kebingungan. Itu karena github.com membedakan bukan oleh pengguna, yang selalu hanya git, tetapi oleh kunci ssh yang Anda gunakan untuk terhubung. Cukup konfigurasikan asal remote Anda menggunakan alias host Anda sendiri. "
Ringkasan di atas adalah milik komentar di posting blog di bawah ini.
Saya telah menemukan penjelasan ini paling jelas. Dan itu bekerja untuk saya, setidaknya pada April 2012.
http://net.tutsplus.com/tutorials/tools-and-tips/how-to-work-with-github-and-multiple-accounts/
sumber
$ ssh-add ~/.ssh/id_rsa_COMPANY
- lihat Kesalahan: Izin ditolak (publickey) - Dokumentasi PenggunaDetail di http://net.tutsplus.com/tutorials/tools-and-tips/how-to-work-with-github-and-multiple-accounts/ yang ditautkan oleh mishaba bekerja sangat baik untuk saya.
Dari halaman itu:
Kemudian edit file itu menjadi seperti ini (satu entri per akun):
sumber
git clone git@github-COMPANY/repo/name.git
mendapatkan kunci ssh yang benar.git clone https://github-COMPANY/GitUserName/projectname.git
sepertinya tidak berfungsi. Kunci default menggunakan github.com berfungsi dengan baik.ssh: connect to host github.com port 22: Bad file number fatal: The remote end hung up unexpectedly
. https adalah satu-satunya cara sejauh ini.$ git clone https://github-USER/UserName/test_project_user.git Cloning into test_project_user... error: Couldn't resolve host 'github-USER' while accessing https://github-USER/N UserName/test_project_user.git/info/refs fatal: HTTP request failed
Saya tidak yakin apakah ini terkait dengan file konfigurasi atau cara saya mencoba meniru panggilan git Anda dengan https.Buka file config & tambahkan kode di bawah ini. (ubah sesuai dengan akun Anda)
Akun 1
Akun 2
Akun 3
Tambahkan url jarak jauh sebagai berikut
Akun 1
Akun 2
Akun 3
sumber
PreferredAuthentications publickey
?Saya menggunakan skrip shell untuk mengalihkan saya ke akun apa pun yang saya ingin menjadi "aktif". Pada dasarnya Anda mulai dari awal yang baru, membuat satu akun dikonfigurasikan dengan benar dan berfungsi, kemudian pindahkan file-file ini ke nama dengan awalan yang tepat. Mulai saat itu Anda dapat menggunakan perintah "github", atau "gitxyz" untuk beralih:
Saya sangat beruntung dengan ini. Saya juga membuat skrip run di Xcode (untuk Anda pengguna Mac) sehingga tidak akan membangun proyek saya kecuali saya memiliki pengaturan yang tepat (karena menggunakan git):
Jalankan Script yang ditempatkan setelah Dependensi (menggunakan / bin / ksh sebagai shell):
EDIT: menambahkan tes untuk keberadaan file baru dan menyalin file lama ke / tmp ke alamat komentar oleh @naomik di bawah ini.
sumber
id_rsa
danid_rsa.pub
kunci mereka akan dihapus, mereka bisa dikunci dari remote.Jawaban ini untuk pemula (bukan-git guru) . Saya baru-baru ini memiliki masalah ini dan mungkin itu hanya saya, tetapi sebagian besar jawaban tampaknya memerlukan pemahaman lebih lanjut tentang git. Setelah membaca beberapa jawaban stack overflow termasuk utas ini, berikut adalah langkah-langkah yang perlu saya ambil untuk beralih dengan mudah antara akun GitHub (mis. Asumsikan dua akun GitHub, github.com/personal dan gitHub.com/work ):
ls -al ~/.ssh
filekunci ssh yang adadengan ekstensi
.pub
adalah kunci ssh Anda sehingga Anda harus memiliki dua untukpersonal
danwork
akun. Jika hanya ada satu atau tidak ada, saatnya untuk menghasilkan bijaksana lain lewati ini.- Membuat kunci ssh : masuk ke github (baik akun pribadi atau kantor), navigasikan ke Pengaturan dan salin email terkait.
sekarang kembali ke Terminal dan jalankan
ssh-keygen -t rsa -C "the copied email"
, Anda akan melihat:Menghasilkan pasangan kunci publik / swasta.
Masukkan file untuk menyimpan kunci (/.../.ssh/id_rsa):
id_rsa adalah nama default untuk kunci ssh yang akan segera dihasilkan, jadi salin path dan ganti nama defaultnya, mis.
/.../.ssh/id_rsa_work
jika menghasilkan untuk akun kerja. berikan kata sandi atau cukup masukkan untuk mengabaikan dan, Anda akan membaca sesuatu seperti Gambar acak kunci adalah: dan gambar. selesaiUlangi langkah ini sekali lagi untuk akun github kedua Anda. Pastikan Anda menggunakan alamat email yang tepat dan nama kunci ssh yang berbeda (mis. Id_rsa_personal) untuk menghindari penulisan ulang.
Pada tahap ini, Anda akan melihat dua kunci ssh saat dijalankan
ls -al ~/.ssh
lagi.pbcopy < ~/.ssh/id_rsa_work.pub
gantiid_rsa_work.pub
dengan apa yang Anda sebut milik Anda.Sekarang setelah kunci ssh kami disalin ke clipboard, kembali ke akun github [Pastikan Anda masuk ke akun kerja jika kunci ssh yang Anda salin
id_rsa_work
] dan arahkan kePengaturan - Kunci SSH dan GPG dan klik tombol kunci SSH Baru (bukan kunci GPG Baru btw: D)
berikan beberapa judul untuk kunci ini, tempelkan kunci dan klik pada Tambahkan kunci SSH. Anda sekarang telah berhasil menambahkan kunci ssh atau memperhatikan itu telah ada di sana selama ini baik-baik saja (atau Anda mendapat kesalahan karena Anda memilih kunci GPG Baru alih - alihKunci SSH baru : D).
Edit konfigurasi global git: Langkah terakhir adalah memastikan file konfigurasi global mengetahui semua akun github (bisa dikatakan).
Jalankan
git config --global --edit
untuk mengedit file global ini, jika ini membuka vim dan Anda tidak tahu bagaimana menggunakannya, tekani
untuk masuk ke mode Insert, edit file seperti di bawah ini, dan tekan esc diikuti oleh:wq
untuk keluar dari mode insert:[inside this square brackets give a name to the followed acc.] name = github_username email = github_emailaddress [any other name] name = github_username email = github_email [credential] helper = osxkeychain useHttpPath = true
Selesai !, sekarang ketika mencoba mendorong atau menarik dari repo, Anda akan ditanya akun GitHub mana yang harus ditautkan dengan repo ini dan diminta hanya sekali, konfigurasi lokal akan mengingat tautan ini dan bukan konfigurasi global sehingga Anda dapat bekerja pada repo berbeda yang ditautkan dengan akun yang berbeda tanpa harus mengedit konfigurasi global setiap kali.
sumber
Perbaikan yang lebih sederhana dan mudah untuk menghindari kebingungan ..
Bagi pengguna Windows untuk menggunakan beberapa atau beberapa akun git untuk berbagai proyek.
Langkah-langkah berikut: Buka Control Panel dan Cari untuk Credential Manager. Kemudian Buka Manajer Kredensial -> Kredensial Windows
Sekarang hapus git: https // github.com node di bawah Judul Kredensial Generik
Ini akan menghapus kredensial saat ini. Sekarang Anda dapat menambahkan proyek apa pun melalui git pull, ia akan meminta nama pengguna dan kata sandi.
Ketika Anda menghadapi masalah dengan akun lain, lakukan proses yang sama.
Terima kasih
lihat gambar
sumber
baru saja menemukan ini untuk Windows, menggunakan kredensial untuk setiap repo:
Format kredensial. https://github.com . memberi tahu penolong kredensial URL untuk kredensial. 'UseHttpPath' memberi tahu manajer kredensial untuk menggunakan jalur untuk kredensial. Jika useHttpPath dihilangkan maka manajer kredensial akan menyimpan satu kredensial untuk https://github.com . Jika dimasukkan maka manajer kredensial akan menyimpan banyak kredensial, yang benar-benar saya inginkan.
sumber
Saya menemukan permata ini sangat berguna: sshwitch
https://github.com/agush22/sshwitch
http://rubygems.org/gems/sshwitch
Ini membantu untuk mematikan kunci ssh. Ingatlah untuk mencadangkan semuanya terlebih dahulu!
Juga untuk memastikan bahwa komit memiliki alamat email yang benar terkait dengan mereka, saya memastikan bahwa file ~ / .gitconfig memiliki alamat email yang tepat.
sumber
Selain membuat beberapa Kunci SSH untuk beberapa akun, Anda juga dapat mempertimbangkan untuk menambahkan kolaborator pada setiap proyek menggunakan email akun yang sama dan menyimpan kata sandi secara permanen.
Saya telah menyiapkan beberapa akun dengan email yang berbeda kemudian menempatkan pengguna dan email yang sama di setiap akun sebagai salah satu kolaborator. Dengan cara ini saya dapat mengakses semua akun tanpa menambahkan Kunci SSH, atau beralih ke nama pengguna lain, dan email untuk otentikasi.
sumber
Pendekatan termudah dan langsung (IMHO) - tidak ada file konfigurasi tidak terlalu merepotkan
Cukup buat kunci ssh lainnya.
Katakanlah Anda memiliki akun GitHub baru, buat saja kunci baru untuk itu:
Sekarang Anda harus memiliki yang lama dan yang baru, untuk melihatnya, jalankan:
Anda hanya perlu menjalankan di atas sekali saja.
Mulai sekarang, setiap kali Anda ingin beralih di antara keduanya, jalankan saja:
Untuk beralih ke yang lama, jalankan lagi:
sumber
Cara lain yang lebih mudah adalah menggunakan beberapa aplikasi desktop, seperti apa yang saya lakukan, menggunakan akun A di desktop Github, saat menggunakan akun B di Github Kraken
sumber
IntelliJ Idea memiliki dukungan bawaan untuk https://www.jetbrains.com/help/idea/github.html#da8d32ae
sumber
Jika Anda tidak ingin mengacaukan
~/.ssh/config
file yang disebutkan di sini, Anda bisa menjalankannyagit config core.sshCommand "ssh -i ~/.ssh/custom_id_rsa"
di repo yang ingin Anda komit dari akun lain.Sisa pengaturannya sama:
Buat kunci SSH baru untuk akun kedua
ssh-keygen -t rsa -f ~/.ssh -f ~/.ssh/custom_id_rsa
Masuk ke github dengan akun Anda yang lain, buka https://github.com/settings/keys , dan rekatkan konten
~/.ssh/custom_id_rsa.pub
Pastikan Anda menggunakan SSH alih-alih HTTPS sebagai url jarak jauh:
git remote set-url origin [email protected]:upstream_project_teamname/upstream_project.git
sumber
Anda tidak harus memiliki dua akun berbeda untuk pribadi dan pekerjaan. Bahkan, Github Merekomendasikan Anda mempertahankan satu akun dan membantu Anda menggabungkan keduanya.
Ikuti tautan di bawah ini untuk bergabung jika Anda memutuskan tidak perlu memelihara beberapa akun.
https://help.github.com/articles/merging-multiple-user-accounts/
sumber
Tidak seperti jawaban lain, di mana Anda perlu mengikuti beberapa langkah untuk menggunakan dua akun github yang berbeda dari mesin yang sama, bagi saya ini bekerja dalam dua langkah .
Anda hanya perlu:
1) menghasilkan pasangan kunci publik dan pribadi SSH untuk setiap akun Anda di bawah
~/.ssh
lokasi dengan nama dan berbeda2) tambahkan kunci publik yang dihasilkan ke akun masing-masing di bawah
Settings
>>SSH and GPG keys
>>New SSH Key
.Untuk membuat pasangan kunci publik dan pribadi SSH gunakan perintah berikut:
Sebagai hasil dari perintah di atas,
id_rsa_WORK
danid_rsa_WORK.pub
file akan dibuat untuk akun kantor Anda (ex - git.work.com) danid_rsa_PERSONAL
danid_rsa_PERSONAL.pub
akan dibuat untuk akun pribadi Anda (ex - github.com).Setelah dibuat, salin konten dari setiap
*.pub
file publik ( ) dan lakukan Langkah 2 untuk setiap akun.PS : Tidak perlu membuat entri host untuk setiap akun git yang ada di
~/.ssh/config
file seperti disebutkan dalam jawaban lain, jika nama host dari dua akun Anda berbeda.sumber
Jika Anda menginstal WSL, Anda dapat memiliki dua akun git yang terpisah - satu di WSL dan satu di windows.
sumber
Anda harus dan tidak boleh mendorong ke proyek dengan beberapa kredensial yang sama. Setelah memulai pada mesin baru gunakan langkah-langkah berikut untuk menyiapkan dan menggunakan kredensial gitlab Anda dengan benar:
Semua ini sebagai berikut:
sumber
Buat kunci SSH baru di terminal / baris perintah Anda.
ssh-keygen -t rsa -C “your-email-address”
Berikut ini akan ditampilkan:
Menghasilkan pasangan kunci publik / swasta. Masukkan file untuk menyimpan kunci (/home/your_username/.ssh/id_rsa):
Salin dan tempel jalur diikuti oleh nama yang dapat diidentifikasi untuk file:
4) Kemudian akan meminta Anda untuk hal berikut:
5) Sekarang Anda dapat mengetikkan perintah berikut untuk melihat semua kunci SSH yang Anda miliki di mesin lokal Anda:
Anda harus dapat melihat file kunci SSH baru Anda. Seperti yang dapat Anda lihat di akun saya, saya memiliki id_rsa_test dan id_rsa_personal.pub.
6) Selanjutnya Anda perlu menyalin kunci SSH yang disimpan dalam file id_rsa_personal.pub. Anda dapat membuka ini di editor teks pilihan Anda. Saat ini saya menggunakan atom jadi saya membuka file menggunakan perintah berikut:
Anda kemudian akan mendapatkan sesuatu yang mirip dengan ini:
ssh-rsa AAB3HKJLKC1yc2EAAAADAQABAAABAQCgU5 + ELtwsKkmcoeF3hNd7d6CjW + dWut83R / Dc01E / YzLc5ZFri18doOwuQoeBMpmjmjmdljrl
7) Salin ini dan navigasikan ke akun GitHub Anda → Pengaturan → Kunci SSH dan GPG 8) Klik pada kunci SSH Baru. Salin kunci, berikan judul dan tambahkan. 9) Tambahkan kunci dari terminal
10) Konfigurasikan pengguna dan kata sandi.
11) Kami siap untuk berkomitmen dan mendorong sekarang.
sumber
Jika Anda telah membuat atau mengkloning repositori lain dan Anda tidak dapat menarik dari
origin
atauupstream
menambahkan kunci ssh di direktori itu menggunakan perintah berikut ini berfungsi.Ini kesalahan yang saya dapatkan di sini:
Saya menggunakan perintah berikut, ini berfungsi:
ssh-add ~/.ssh/id_rsa_YOUR_COMPANY_NAME
sumber