Saya sedang bekerja di belakang proksi http. Saya mencoba mengkloning pohon sumber Android menggunakan alat "repo" mereka.
Alat ini bersikeras menggunakan git://
URL, meskipun http://
URL juga berfungsi. Akibatnya, saya tidak dapat mengunduh sumbernya.
Apakah mungkin untuk memaksa git
untuk selalu menggunakan http
?
Edit: http_proxy saya dikonfigurasi dengan benar. Misalnya, ini berfungsi:
git clone http://android.git.kernel.org/platform/manifest.git
Tetapi ini tidak (errno = Waktu koneksi habis):
git clone git://android.git.kernel.org/platform/manifest.git
Jadi jawaban ini tidak terlalu membantu saya.
Jawaban:
Berikut adalah contoh penulisan ulang protokol default untuk GitHub:
Dokumentasi Git untuk
url.<base>.insteadOf
:sumber
git remote -v
segera menunjukkan efekinsteadOf
danpushInsteadOf
konfigurasi[email protected]:...
format untuk url. Ini berhasil:git config --global url."https://github.com/".insteadOf '[email protected]:'
untuk saya.Saya tidak tahu bagaimana alat repo ini menggunakan Git (dan jika Anda dapat mengkonfigurasi 'repo' untuk menggunakan protokol http), tetapi Anda dapat mencoba mengelabui menggunakan
url.<base>.insteadOf
variabel konfigurasi (lihat manual git-config dan git-fetch ).Sudahkah Anda mencoba menggunakan
core.gitProxy
untuk melewati firewall, jika itu adalah masalah dengan menggunakan protokol git?sumber
Saya punya masalah yang sama dengan mendapatkan submodul secara repositori dalam git. Saya di belakang firewall gila yang tidak memungkinkan koneksi keluar pada port git. Beberapa submodules dari submodules diberi kode sebagai
git://github.com/blah/blah.git
. Ini membunuh populasi submodul rekursif saya. Solusinya adalah sebagai berikut:Ini menggantikan
git://
denganhttps://<GITUSERNAME>@
di semua URL repositori submodule. Anda perlu mengganti<GITUSERNAME>
dengan nama pengguna git Anda sendiri. Juga perhatikan bahwa--global
diperlukan; hanya menambahkan konfigurasi ini ke direktori repositori dasar tidak berfungsi.sumber
Anda dapat memverifikasi
~/.gitconfig
jika Anda menimpa SSH dengan https: //, atau sebaliknya.sumber