Git kini menyokong tiga protokol git://, ssh:// dan http://, dengan konfigurasi proksi yang berbeza: core.gitproxy untuk protokol git://, http.proxy untuk protokol http://, ssh:// Proksi daripada protokol perlu mengkonfigurasi parameter ProxyCommand ssh.
Gunakan terowong SSH untuk semua protokol
Konfigurasi protokol GIT
Buat fail /path/to/socks5proxywrapper dan gunakan alat https://bitbucket.org/gotoh/connect untuk menukar proksi Setiap pengedaran biasanya dibungkus sebagai proksi-sambung atau proksi-sambung.
Anda boleh menggunakan kaedah yanyaoer untuk menetapkan proksi untuk git.
Bagi ejen ssh+pac+socks yang anda nyatakan, ia tidak bercanggah dengan ejen git yang disebut oleh yanyaoer.
Proksi stokin ialah proksi asas peringkat litar, manakala set proksi dalam konfigurasi git ialah peringkat aplikasi.
Sebagai contoh, pac anda disediakan untuk github.com untuk menggunakan stokin 127.0.0.1:7070 dan konfigurasi git disediakan untuk github.com untuk menggunakan proxy.server.com sebagai proksi.
Kemudian pada masa ini, apabila anda melakukan operasi git, semua permintaan rangkaian akan pergi ke proxy.server.com apabila mereka mencapai lapisan stoking Sememangnya, mereka tidak akan terjejas dan akan keluar secara langsung.
Jika anda mengklon daripada bitbucket dan menggunakan protokol ssh, anda boleh menggunakan semua kaedah proksi ssh
Sebagai contoh, jika ia adalah proksi http atau proksi stokin, anda boleh menggunakan http://bent.latency.net/bent/git/goto... Program kecil ini digunakan sebagai hos ProxyCommand
Jika terdapat pelayan geganti yang anda nyatakan, anda boleh menggunakan nc pada hos jauh untuk melakukannyaProxyCommand http://www.undeadly.org/cgi?action=ar...
Bagi pembezaan trafik yang anda nyatakan, anda boleh membuat tetapan berbeza dalam ~/.ssh/config. Contohnya, konfigurasi yang saya gunakan sebelum
Saya menulis smart_switcher berdasarkan jawapan 1L, yang secara automatik boleh mengenal pasti dan menetapkan pelbagai proksi Berdasarkan konfigurasi proksi http, ia amat sesuai untuk pelbagai situasi pensuisan di mana pejabat mempunyai proksi dan tiada proksi di rumah , ia dipermudahkan kepada sangat mudah, dan hanya perlu ditetapkan hanya IP dan Port gerbang anda.
Baca Saya di sini. . .
Pembungkus penukar proksi pintar, menyokong http, https, ftp, rsync, ssh(sambung depanded), git(sambung depanded) protokol Ia boleh mengesan persekitaran rangkaian anda secara automatik dan menetapkan proksi untuk anda.
Jika anda biasanya menukar persekitaran rangkaian (mungkin di rumah tanpa proksi dan tempat kerja dengan proksi), ini mungkin banyak membantu anda.
Diuji dalam zsh dan bash.
Tangkapan skrin
Pasang
Cuma sumbernya dalam .zshrc anda, atau mana-mana fail sumber skrip shell seperti ini:
source /path/to/smart_switcher.sh
dan, pastikan tetapkan pelayan_proksi/gerbang anda dalam smart_switcher.sh.
Penggunaan
Biasanya, ia dijalankan secara automatik apabila anda log masuk.
smart_switcher menyokong cecho, yang akan membawakan beberapa warna untuk anda.
sambungan diperlukan jika proksi disokong dalam ssh dan git Anda boleh memasangnya dengan mudah dalam laluan /usr/bin/connect.
Kaedah sambungan protokol git menggunakan ssh untuk berkomunikasi dengan pelayan Menetapkan ssh untuk menggunakan proksi sock5 untuk menyambung ke pelayan juga menyelesaikan masalah proksi git.
Kompilkan kod di atas menggunakan gcc dan simpan dalam direktori pembolehubah persekitaran dan namakan semula ia sambung
Masukkan direktori .ssh dan buat
baharu
Konfigurasi fail
Host *
User git
ProxyCommand $HOME/.ssh/proxy-wrapper '%h %p'
Terdapat banyak jawapan di atas. Dengan mengandaikan bahawa program menjalankan arahan git tanpa keadaan atau direktori kerja, parameter -c boleh digunakan untuk memuatkan semula konfigurasi git pada masa jalan, termasuk kunci http.proxy
Penyelesaian terbaik ialah rantaian proksi (https://github.com/haad/proxychains).
Perintah berikut menjalankan program program
$ program rantaian proksi
Ia memaksa sambungan TCP yang dimulakan oleh program tertentu untuk melalui proksi pra-konfigurasi. Sekurang-kurangnya pada Linux, ia lebih serba boleh daripada "proksi SOCKS kepada proksi HTTP". Kedua-duanya saling melengkapi dan boleh merangkumi semua senario yang memerlukan agensi.
Ambil Git sebagai contoh Tanpa rantaian proksi, anda mesti menyediakan proksi untuk setiap protokol (http, git, ssh) mengikut keperluan dokumentasi git. Dengan rantaian proksi, anda boleh melupakan semua ini!
$ sudo apt-get pasang rantai proksi
Buka /etc/proxychains.conf dan ulas baris berikut (lumpuhkan resolusi DNS jauh. Terdapat risiko pencemaran DNS. Perkara berikut menerangkan cara menyelesaikan masalah daya tidak berfungsi.)
proxy_dns
Akhir sekali tambah baris berikut:
stokin5 134.64.206.85 1081
$ rantaian proksi git klon git://github.com/yuzhichang/cppdep
$ sudo proxychains apt-get kemas kini
Di sini 134.64.206.85:1081 ialah lokasi proksi SOCKS.
Git kini menyokong tiga protokol
git://
,ssh://
danhttp://
, dengan konfigurasi proksi yang berbeza:core.gitproxy
untuk protokolgit://
,http.proxy
untuk protokolhttp://
,ssh://
Proksi daripada protokol perlu mengkonfigurasi parameterProxyCommand
ssh.Gunakan terowong SSH untuk semua protokol
Konfigurasi protokol GIT
Buat fail
/path/to/socks5proxywrapper
dan gunakan alat https://bitbucket.org/gotoh/connect untuk menukar proksi Setiap pengedaran biasanya dibungkus sebagai proksi-sambung atau proksi-sambung.Konfigurasikan git
atau
Konfigurasi protokol SSH
Buat
/path/to/soks5proxyssh
failKonfigurasikan git untuk menggunakan pembalut ini
Sudah tentu, anda juga boleh mengkonfigurasi terus
~/.ssh/config
'sProxyCommand
Konfigurasi protokol HTTP
Gunakan proksi http untuk semua protokol
Berdasarkan bahagian sebelumnya, fail
/path/to/socks5proxywrapper
ditukar kepadaKonfigurasi protokol HTTP
Dayakan proksi untuk nama domain
Parametergitproxy menyediakan struktur
* for *
, lihat bahagian core.gitproxyman git-config
untuk mendapatkan butiran.Anda boleh menetapkan http.proxy atau core.gitproxy
untuk repositori inihttp://www.kernel.org/pub/software/sc...
Anda boleh menggunakan kaedah yanyaoer untuk menetapkan proksi untuk git.
Bagi ejen ssh+pac+socks yang anda nyatakan, ia tidak bercanggah dengan ejen git yang disebut oleh yanyaoer.
Proksi stokin ialah proksi asas peringkat litar, manakala set proksi dalam konfigurasi git ialah peringkat aplikasi.
Sebagai contoh, pac anda disediakan untuk github.com untuk menggunakan stokin 127.0.0.1:7070 dan konfigurasi git disediakan untuk github.com untuk menggunakan proxy.server.com sebagai proksi.
Kemudian pada masa ini, apabila anda melakukan operasi git, semua permintaan rangkaian akan pergi ke proxy.server.com apabila mereka mencapai lapisan stoking Sememangnya, mereka tidak akan terjejas dan akan keluar secara langsung.
tsocks - http://tsocks.sourceforge.net/
$ tsocks git clone git@github.com:xxx/xxx.git
Jika anda mengklon daripada bitbucket dan menggunakan protokol ssh, anda boleh menggunakan semua kaedah proksi ssh
Sebagai contoh, jika ia adalah proksi http atau proksi stokin, anda boleh menggunakan http://bent.latency.net/bent/git/goto... Program kecil ini digunakan sebagai hos
ProxyCommand
Jika terdapat pelayan geganti yang anda nyatakan, anda boleh menggunakan
nc
pada hos jauh untuk melakukannyaProxyCommand
http://www.undeadly.org/cgi?action=ar...Bagi pembezaan trafik yang anda nyatakan, anda boleh membuat tetapan berbeza dalam
~/.ssh/config
. Contohnya, konfigurasi yang saya gunakan sebelumDengan cara ini,
yang ditakrifkan di sinigit clone ssh://git@bitbucket.org/XXXX
akan secara automatik memanggilProxyCommand
konfigurasi proksi protokol github ssh |
Konfigurasikan skrip
Tambahkan kebenaran boleh laku padanyaproxy-wrapper
, tetapkan arahan proksi untuk github.com
.ssh/config
Semua mesti menggunakan protokol ssh
Untuk protokol git, sila rujuk [Menggunakan GIT melalui proksi SOCKS](http://twopenguins.org/tips/git-throu...).[Bagaimana untuk menyediakan proksi untuk Git? ](/q/10100000001...)-
[Menggunakan GIT melalui proksi SOCKS](http://twopenguins.org/tips/git-throu...)-
[Ssh percuma](http://milnk.com/link/10645)-
Saya menulis smart_switcher berdasarkan jawapan 1L, yang secara automatik boleh mengenal pasti dan menetapkan pelbagai proksi Berdasarkan konfigurasi proksi http, ia amat sesuai untuk pelbagai situasi pensuisan di mana pejabat mempunyai proksi dan tiada proksi di rumah , ia dipermudahkan kepada sangat mudah, dan hanya perlu ditetapkan hanya IP dan Port gerbang anda.
Baca Saya di sini. . .
penukar_pintar
Penukar proksi pengesan automatik untuk protokol http, https, ftp, rsync, ssh, git.
Ikhtisar
Pembungkus penukar proksi pintar, menyokong http, https, ftp, rsync, ssh(sambung depanded), git(sambung depanded) protokol Ia boleh mengesan persekitaran rangkaian anda secara automatik dan menetapkan proksi untuk anda.
Jika anda biasanya menukar persekitaran rangkaian (mungkin di rumah tanpa proksi dan tempat kerja dengan proksi), ini mungkin banyak membantu anda.
Diuji dalam zsh dan bash.
Tangkapan skrin
Pasang
Cuma sumbernya dalam .zshrc anda, atau mana-mana fail sumber skrip shell seperti ini:
source /path/to/smart_switcher.sh
dan, pastikan tetapkan pelayan_proksi/gerbang anda dalam
smart_switcher.sh
.Penggunaan
Biasanya, ia dijalankan secara automatik apabila anda log masuk.
smart_switcher
menyokong cecho, yang akan membawakan beberapa warna untuk anda.sambungan diperlukan jika proksi disokong dalam ssh dan git Anda boleh memasangnya dengan mudah dalam laluan
/usr/bin/connect
.Kaedah sambungan protokol git menggunakan ssh untuk berkomunikasi dengan pelayan Menetapkan ssh untuk menggunakan proksi sock5 untuk menyambung ke pelayan juga menyelesaikan masalah proksi git.
1.
Kompilkan kod di atas menggunakan gcc dan simpan dalam direktori pembolehubah persekitaran dan namakan semula ia sambung
baharuMasukkan direktori .ssh dan buat
Konfigurasi fail
Pembungkus proksi fail
Terdapat banyak jawapan di atas. Dengan mengandaikan bahawa program menjalankan arahan git tanpa keadaan atau direktori kerja, parameter
-c
boleh digunakan untuk memuatkan semula konfigurasi git pada masa jalan, termasuk kuncihttp.proxy
Contohnya:
Penyelesaian terbaik ialah rantaian proksi (https://github.com/haad/proxychains).
Perintah berikut menjalankan program program
$ program rantaian proksi
Ia memaksa sambungan TCP yang dimulakan oleh program tertentu untuk melalui proksi pra-konfigurasi. Sekurang-kurangnya pada Linux, ia lebih serba boleh daripada "proksi SOCKS kepada proksi HTTP". Kedua-duanya saling melengkapi dan boleh merangkumi semua senario yang memerlukan agensi.
Ambil Git sebagai contoh Tanpa rantaian proksi, anda mesti menyediakan proksi untuk setiap protokol (http, git, ssh) mengikut keperluan dokumentasi git. Dengan rantaian proksi, anda boleh melupakan semua ini!
$ sudo apt-get pasang rantai proksi
Buka /etc/proxychains.conf dan ulas baris berikut (lumpuhkan resolusi DNS jauh. Terdapat risiko pencemaran DNS. Perkara berikut menerangkan cara menyelesaikan masalah daya tidak berfungsi.)
proxy_dns
Akhir sekali tambah baris berikut:
stokin5 134.64.206.85 1081
$ rantaian proksi git klon git://github.com/yuzhichang/cppdep
$ sudo proxychains apt-get kemas kini
Di sini 134.64.206.85:1081 ialah lokasi proksi SOCKS.