Dimungkinkan untuk mengkloning repositori git, menentukan nama pengguna dan kata sandi dalam perintah. Contoh:
git clone https://username:[email protected]/file.git
Apakah mungkin juga untuk menentukan nama pengguna dan kata sandi saat mendorong? Jadi, misalnya, menjalankan git push origin --all
akan menampilkan meminta kata sandi. Saya ingin ini dalam satu perintah.
(Saya mengetahui kemampuan untuk mengatur kunci dan solusi lain, tetapi saya ingin tahu apakah ada cara untuk tetap menggunakan nama pengguna dan kata sandi dengan satu perintah.) Saya menjalankan Git Bash di Windows 8.1.
git commit
?Jawaban:
Ya, Anda bisa melakukannya
git push https://username:[email protected]/file.git --all
dalam hal ini
https://username:[email protected]/file.git
gantiorigin
ingit push origin --all
Untuk melihat opsi lainnya
git push
, cobagit help push
sumber
@
?' '
, misalnya:git push 'https://username:[email protected]/file.git'
Saya menggunakan format di bawah ini
git push https://username:[email protected]/file.git --all
dan jika kata sandi atau nama pengguna Anda mengandung @ gantilah dengan% 40
sumber
urlencode($password)
ini akan menyandikan semua karakter khusus tidak hanya@
.Menurut dokumentasi Git , argumen terakhir dari
git push
perintah tersebut dapat berupa repositori yang ingin Anda dorong:Dan
repository
parameternya bisa berupa URL atau nama jarak jauh.Jadi Anda dapat menentukan nama pengguna dan kata sandi dengan cara yang sama seperti yang Anda lakukan di contoh
clone
perintah Anda.sumber
Git tidak akan menyimpan kata sandi saat Anda menggunakan URL seperti itu. Sebagai gantinya, ini hanya akan menyimpan nama pengguna, jadi itu hanya perlu meminta Anda untuk kata sandi di lain waktu. Seperti yang dijelaskan di manual , untuk menyimpan kata sandi, Anda harus menggunakan pembantu kredensial eksternal . Untuk Windows, Anda dapat menggunakan Windows Credential Store untuk Git . Helper ini juga disertakan secara default di GitHub untuk Windows .
Saat menggunakannya, kata sandi Anda akan otomatis diingat, jadi Anda hanya perlu memasukkannya sekali. Jadi, ketika Anda mengkloning, Anda akan dimintai kata sandi, dan kemudian setiap komunikasi lebih lanjut dengan remote control tidak akan meminta kata sandi Anda lagi. Sebagai gantinya, pembantu kredensial akan memberikan otentikasi kepada Git.
Ini tentu saja hanya berfungsi untuk otentikasi melalui https; untuk akses ssh (
[email protected]/repository.git
) Anda menggunakan kunci SSH dan yang dapat Anda ingat menggunakanssh-agent
(atau kontes PuTTY jika Anda menggunakan plink).sumber
Mungkin saja, tetapi sebelum git 2.9.3 (Agustus 2016), a
git push
akan mencetak url lengkap yang digunakan saat mendorong kembali ke repo kloning.Itu akan termasuk nama pengguna dan kata sandi Anda!
Tapi tidak lebih: Lihat commit 68f3c07 (20 Jul 2016), dan commit 882d49c (14 Jul 2016) oleh Jeff King (
peff
) .(Digabung oleh Junio C Hamano -
gitster
- di commit 71076e1 , 08 Agustus 2016)sumber
Bagi siapa pun yang memiliki masalah dengan kata sandi dengan karakter khusus, hilangkan kata sandi dan itu akan meminta Anda untuk itu:
sumber