Ngiêm cấm sử đụng PROXY và VPS vào mục đích trái pháp luật bạn sẽ phải chịu toàn bộ trách nhiệm trước pháp luật khi sử dụng dịch vụ của chúng tôi tks!
Git proxy: Cấu hình HTTP, HTTPS, SOCKS5 cho clone và push

Git proxy: Cấu hình HTTP, HTTPS, SOCKS5 cho clone và push

Chuyên viên Kỹ thuật ProxyVN 03-19-2026 Đang tính... phút đọc

Git proxy là cấu hình cho phép Git gửi các lệnh clone, fetch, pull, push qua một máy chủ proxy HTTP hoặc SOCKS5 thay vì kết nối thẳng tới máy chủ chứa kho mã. Anh em cần tới nó khi làm việc trong mạng công ty, khi kết nối trực tiếp tới kho mã chập chờn, hoặc khi máy chủ build chỉ được ra Internet qua proxy. Bài này ProxyVN hướng dẫn đủ các cách cấu hình và cách sửa lỗi thường gặp.

Git proxy và các giao thức Git sử dụng

Git nói chuyện với máy chủ từ xa bằng vài giao thức khác nhau. Mỗi giao thức đi qua proxy theo một cách riêng, nên việc đầu tiên là xác định kho mã của anh em đang dùng giao thức nào.

Git qua HTTPS và Git qua SSH

Git qua HTTPS và Git qua SSH

HTTPS

Địa chỉ kho mã bắt đầu bằng https://. Đây là giao thức phổ biến nhất hiện nay. Git dùng thư viện libcurl để gửi yêu cầu HTTP, nên mọi thứ libcurl hỗ trợ về proxy đều dùng được: proxy HTTP, proxy HTTPS, SOCKS4, SOCKS5.

SSH

Địa chỉ có dạng git@máy-chủ:nhóm/kho.git hoặc bắt đầu bằng ssh://. Git gọi chương trình ssh của hệ điều hành để mở kết nối. Cấu hình http.proxy của Git không có tác dụng với giao thức này. Muốn đi qua proxy, phải cấu hình ở phía SSH.

Giao thức git://

Địa chỉ bắt đầu bằng git://, dùng cổng 9418, không mã hoá, không xác thực. Ngày nay hiếm gặp và nhiều dịch vụ đã tắt. Git có tuỳ chọn core.gitProxy cho giao thức này, nhưng lời khuyên thực tế là đổi địa chỉ kho sang HTTPS.

Cách xem kho đang dùng giao thức nào

git remote -v

Lệnh in ra địa chỉ của từng remote. Nhìn phần đầu địa chỉ là biết giao thức. Một kho có thể có nhiều remote với giao thức khác nhau.

Sai lầm phổ biến nhất là đặt http.proxy rồi thắc mắc vì sao kho dùng địa chỉ git@ vẫn không đi qua proxy. Hai giao thức này có hai đường cấu hình tách biệt.

Cấu hình git proxy cho HTTP và HTTPS

Đây là trường hợp thường gặp nhất và cũng đơn giản nhất.

Lệnh cơ bản

git config --global http.proxy http://103.1.2.3:8080

Sau lệnh này, mọi kho trên máy dùng địa chỉ http:// hoặc https:// đều đi qua proxy đã khai báo. Theo tài liệu git-config, tuỳ chọn http.proxy ghi đè các biến môi trường về proxy và nhận cú pháp giống cú pháp proxy của cURL.

Không có tuỳ chọn https.proxy

Rất nhiều hướng dẫn trên mạng bảo chạy thêm lệnh đặt https.proxy. Tài liệu chính thức của Git không có tuỳ chọn nào tên như vậy. Tuỳ chọn http.proxy áp dụng cho cả kho http:// lẫn https://, vì tên nhóm "http" trong cấu hình Git chỉ họ giao thức HTTP nói chung. Lệnh đặt https.proxy không gây lỗi, Git chỉ lưu lại một giá trị mà nó không bao giờ đọc.

Ba mức cấu hình

Ba mức cấu hình của Git

Ba mức cấu hình của Git

Git đọc cấu hình ở ba mức, mức sau ghi đè mức trước:

  • system: áp dụng cho mọi người dùng trên máy, thêm cờ --system.
  • global: áp dụng cho người dùng hiện tại, thêm cờ --global, lưu trong tệp .gitconfig ở thư mục cá nhân.
  • local: chỉ áp dụng cho kho đang đứng, không thêm cờ, lưu trong tệp .git/config của kho.

Đặt ở mức global khi mọi kho đều cần proxy. Đặt ở mức local khi chỉ một dự án cần.

Xem và gỡ cấu hình

git config --show-origin --get-all http.proxy
git config --global --unset http.proxy

Lệnh đầu cho biết giá trị đang có và nó nằm ở tệp nào, rất hữu ích khi proxy "tự nhiên" xuất hiện do một công cụ khác ghi vào. Lệnh sau gỡ cấu hình ở mức global. Nếu giá trị nằm ở mức khác, đổi cờ tương ứng.

Dùng proxy cho một lệnh duy nhất

git -c http.proxy=http://103.1.2.3:8080 clone https://github.com/git/git.git

Cờ -c đặt cấu hình cho riêng lần chạy đó, không lưu vào tệp nào. Cách này hợp khi chỉ cần proxy cho lần clone đầu tiên.

Tóm lại, với kho HTTPS chỉ cần một tuỳ chọn duy nhất là http.proxy, đặt đúng mức và nhớ cách gỡ.

Git proxy có tên đăng nhập và mật khẩu

Proxy thương mại và proxy công ty thường yêu cầu xác thực. Git nhận thông tin này ngay trong địa chỉ proxy.

Cú pháp

git config --global http.proxy http://ana:pw123@103.1.2.3:8080

Phần trước dấu @ là tên đăng nhập và mật khẩu, ngăn bởi dấu hai chấm. Các định dạng địa chỉ proxy và cách chuyển đổi có trong bài định dạng proxy của ProxyVN.

Ký tự đặc biệt phải mã hoá

Nếu mật khẩu chứa ký tự có ý nghĩa trong địa chỉ URL, Git sẽ cắt sai. Phải thay ký tự đó bằng mã phần trăm tương ứng.

Bảng: Ký tự đặc biệt phải mã hoá

Ký tự

Mã thay thế

@

%40

:

%3A

/

%2F

#

%23

%

%25

dấu cách

%20

Ví dụ mật khẩu p@ss:1 phải viết thành p%40ss%3A1. Đây là nguyên nhân hàng đầu của lỗi xác thực dù thông tin "đã nhập đúng".

Mật khẩu nằm ở dạng văn bản thường

Giá trị http.proxy được lưu nguyên văn trong tệp cấu hình. Ai đọc được tệp .gitconfig là đọc được mật khẩu proxy. Trên máy dùng chung hoặc máy chủ build, cân nhắc các cách sau:

  • Dùng biến môi trường do hệ thống CI cấp, không ghi vào tệp.
  • Dùng proxy xác thực theo địa chỉ IP được phép thay cho mật khẩu.
  • Giới hạn quyền đọc tệp cấu hình.

So sánh hai kiểu xác thực có trong bài xác thực proxy bằng IP whitelist hay user password.

Kiểu xác thực của proxy công ty

Proxy công ty có thể dùng NTLM hoặc Kerberos thay cho xác thực cơ bản. Git có tuỳ chọn http.proxyAuthMethod nhận các giá trị anyauth, basic, digest, negotiate, ntlm. Giá trị mặc định anyauth để Git tự chọn theo phản hồi của proxy. Khi proxy trả 407 liên tục dù mật khẩu đúng, thử đặt rõ phương thức theo hướng dẫn của bộ phận IT.

Đừng nhầm với mật khẩu của kho mã

Thông tin trong http.proxy là để qua proxy. Tên đăng nhập và mã truy cập của GitHub, GitLab là để vào kho, được hỏi riêng và lưu bằng trình quản lý thông tin đăng nhập. Hai lớp xác thực này độc lập. Lỗi 407 là của proxy, lỗi 401 hoặc 403 là của máy chủ kho mã.

Cấu hình git proxy với SOCKS5

Nếu proxy của anh em là SOCKS5, chỉ cần đổi phần giao thức trong địa chỉ.

Hai tiền tố socks5 và socks5h

git config --global http.proxy socks5://ana:pw123@103.1.2.3:1080
git config --global http.proxy socks5h://ana:pw123@103.1.2.3:1080

Khác biệt nằm ở việc phân giải tên miền. Với socks5, máy của anh em tự phân giải tên miền của kho mã rồi gửi địa chỉ IP cho proxy. Với socks5h, tên miền được gửi nguyên cho proxy và proxy phân giải. Tài liệu CURLOPT_PROXY của libcurl liệt kê đầy đủ các tiền tố được hỗ trợ.

Nên chọn tiền tố nào

Dùng socks5h khi mạng nội bộ không phân giải được tên miền bên ngoài, hoặc khi không muốn truy vấn DNS đi ra từ máy mình. Dùng socks5 khi cần máy mình kiểm soát việc phân giải, ví dụ có bản ghi riêng trong tệp hosts.

Đường hầm SSH làm proxy SOCKS

Một tình huống quen thuộc với lập trình viên: mở đường hầm tới một máy chủ trung gian bằng lệnh ssh -D 1080, rồi trỏ Git vào socks5h://127.0.0.1:1080. Mọi lệnh Git qua HTTPS sẽ đi ra từ máy chủ trung gian đó.

Cổng HTTP và cổng SOCKS5 khác nhau

Nhà cung cấp thường cấp hai cổng cho một địa chỉ. Khai báo socks5:// mà dùng cổng HTTP sẽ lỗi bắt tay ngay. Kiến thức sử dụng loại proxy này có trong bài cách sử dụng SOCKS5 proxy.

Git proxy bằng biến môi trường

Ngoài tệp cấu hình, Git còn đọc các biến môi trường quen thuộc mà nhiều công cụ dòng lệnh cùng dùng.

Các biến được đọc

  • http_proxy: proxy cho địa chỉ http://.
  • https_proxy hoặc HTTPS_PROXY: proxy cho địa chỉ https://.
  • all_proxy hoặc ALL_PROXY: proxy cho mọi giao thức nếu biến riêng không có.
  • no_proxy hoặc NO_PROXY: danh sách tên miền không đi qua proxy.

Chương biến môi trường trong sách Pro Git mô tả các biến ảnh hưởng tới hành vi của Git, gồm cả nhóm biến mạng.

Đặt biến trên từng hệ điều hành

export https_proxy=http://ana:pw123@103.1.2.3:8080
set https_proxy=http://ana:pw123@103.1.2.3:8080
$env:https_proxy = "http://ana:pw123@103.1.2.3:8080"

Dòng đầu dành cho Linux và macOS, dòng thứ hai cho Command Prompt, dòng thứ ba cho PowerShell. Biến đặt kiểu này chỉ sống trong cửa sổ dòng lệnh hiện tại.

Thứ tự ưu tiên

Tuỳ chọn http.proxy trong cấu hình Git thắng biến môi trường. Nếu đã đặt cả hai với giá trị khác nhau, Git dùng giá trị trong cấu hình. Đây là nguồn gốc của nhiều ca "đã đổi biến môi trường mà Git vẫn dùng proxy cũ".

Khi nào dùng biến môi trường

Biến môi trường hợp với máy chủ build và container, nơi mọi công cụ như Git, cURL, wget, trình quản lý gói cần cùng một proxy. Đặt một lần, mọi công cụ cùng đọc. Cách cấu hình cho các công cụ kia có trong bài cURL proxy là gì, bài wget proxy và bài proxy Docker.

Bỏ qua proxy cho máy chủ nội bộ

Máy chủ Git nội bộ của công ty thường không cần và không nên đi qua proxy ra ngoài. Thêm tên miền đó vào no_proxy. Quy tắc viết biến này có trong bài no_proxy là gì.

Git proxy riêng cho từng máy chủ và từng kho

Đặt proxy toàn cục đôi khi quá tay. Git cho phép giới hạn phạm vi rất linh hoạt.

Proxy riêng cho từng máy chủ Git

Proxy riêng cho từng máy chủ Git

Theo địa chỉ máy chủ

git config --global http.https://github.com/.proxy http://103.1.2.3:8080
git config --global http.https://git.congty.local/.proxy ""

Dòng đầu chỉ dùng proxy cho kho trên github.com. Dòng sau đặt giá trị rỗng để máy chủ nội bộ đi thẳng, kể cả khi có một proxy toàn cục. Git chọn mục khớp cụ thể nhất với địa chỉ của kho.

Theo từng kho

Đứng trong thư mục kho và chạy lệnh không có cờ --global. Cấu hình nằm trong kho đó, không ảnh hưởng kho khác.

Theo từng remote

git config remote.origin.proxy http://103.1.2.3:8080

Tuỳ chọn remote.tên.proxy áp dụng cho đúng một remote. Hữu ích khi một kho có remote công ty đi thẳng và remote công khai đi qua proxy.

Bảng chọn phạm vi

Bảng: Bảng chọn phạm vi

Nhu cầu

Cách đặt

Mọi kho HTTPS trên máy

http.proxy mức global

Chỉ một dịch vụ, ví dụ GitHub

http.địa-chỉ.proxy

Chỉ một dự án

http.proxy mức local

Chỉ một remote trong dự án

remote.tên.proxy

Một lệnh duy nhất

git -c http.proxy=...

Tóm lại, hãy đặt proxy ở phạm vi hẹp nhất đủ dùng. Phạm vi càng hẹp, càng ít tác dụng phụ lên dự án khác.

Git proxy cho kết nối SSH

Kho dùng địa chỉ git@ đi bằng SSH. Phần này dành cho anh em không thể hoặc không muốn đổi sang HTTPS.

Dùng ProxyCommand trong cấu hình SSH

Mở tệp config trong thư mục .ssh ở thư mục cá nhân và thêm khối sau. Với proxy SOCKS5 trên Linux và macOS:

Host github.com
    User git
    ProxyCommand nc -X 5 -x 103.1.2.3:1080 %h %p

Với proxy HTTP, đổi -X 5 thành -X connect. Trên Windows, Git for Windows đi kèm chương trình connect, dùng thay cho nc:

Host github.com
    User git
    ProxyCommand connect -S 103.1.2.3:1080 %h %p

Cờ -S là SOCKS, cờ -H là proxy HTTP. Hai ký hiệu %h và %p được SSH thay bằng tên máy chủ và cổng đích.

SSH qua cổng 443

Nhiều mạng và nhiều proxy chỉ cho phép kết nối tới cổng 443. GitHub có địa chỉ riêng nhận SSH trên cổng này. Theo hướng dẫn dùng SSH qua cổng HTTPS của GitHub, anh em cấu hình như sau:

Host github.com
    Hostname ssh.github.com
    Port 443
    User git

Kết hợp khối này với ProxyCommand là đi được qua hầu hết proxy HTTP chỉ mở cổng 443.

Đi qua máy chủ trung gian

Nếu thứ anh em có là một máy chủ SSH trung gian chứ không phải proxy, dùng ProxyJump thay cho ProxyCommand. Cách làm có trong bài SSH ProxyJump là gì.

Đổi sang HTTPS cho đơn giản

Trong nhiều trường hợp, cách nhanh nhất là đổi địa chỉ remote sang HTTPS rồi dùng http.proxy.

git remote set-url origin https://github.com/nhom/kho.git

Git cũng có tuỳ chọn url.địa-chỉ.insteadOf để tự thay tiền tố git@ bằng https:// cho mọi kho mà không cần sửa từng remote.

Lỗi thường gặp khi dùng git proxy

Thông báo lỗi của Git khi đi qua proxy khá rõ nếu biết cách đọc. Bảng dưới gom các lỗi phổ biến.

Lỗi thường gặp khi dùng Git qua proxy

Lỗi thường gặp khi dùng Git qua proxy

Bảng: Lỗi thường gặp khi dùng git proxy

Thông báo

Nguyên nhân thường gặp

Hướng xử lý

Received HTTP code 407 from proxy after CONNECT

Sai user, password, ký tự đặc biệt chưa mã hoá

Kiểm tra lại, mã hoá ký tự đặc biệt

Proxy CONNECT aborted

Proxy đóng kết nối, không cho tới cổng đích

Kiểm tra proxy có cho CONNECT tới cổng 443

Could not resolve proxy

Sai tên máy chủ proxy, lỗi DNS

Dùng địa chỉ IP, kiểm tra chính tả

Failed to connect to ... port ...: Timed out

Proxy không hoạt động, sai cổng, bị tường lửa chặn

Thử proxy bằng cURL

SSL certificate problem: unable to get local issuer certificate

Proxy công ty giải mã HTTPS bằng chứng chỉ riêng

Thêm chứng chỉ gốc của công ty vào Git

Connection reset, early EOF khi clone kho lớn

Proxy cắt kết nối dài

Clone nông, tăng bộ đệm

Lỗi 407

Đây là lỗi xác thực proxy. Ngoài mật khẩu, kiểm tra gói proxy còn hạn và địa chỉ IP của máy có nằm trong danh sách được phép nếu proxy dùng kiểu xác thực đó. Chi tiết có trong bài sửa lỗi 407 proxy authentication required.

Lỗi chứng chỉ SSL

Một số proxy công ty đứng giữa và giải mã HTTPS để kiểm tra nội dung. Git thấy chứng chỉ lạ nên từ chối. Cách xử lý đúng là xin tệp chứng chỉ gốc từ bộ phận IT và trỏ Git tới nó bằng tuỳ chọn http.sslCAInfo. Không nên tắt kiểm tra bằng http.sslVerify false, vì khi đó Git chấp nhận mọi chứng chỉ, kể cả của kẻ đứng giữa có ý xấu.

Clone kho lớn bị đứt giữa chừng

Proxy có thể giới hạn thời gian hoặc dung lượng mỗi kết nối. Thử clone nông để giảm dữ liệu lần đầu, rồi lấy thêm lịch sử sau.

git clone --depth 1 https://github.com/nhom/kho-lon.git
git fetch --unshallow

Bật nhật ký chi tiết

Khi thông báo lỗi chưa đủ rõ, bật chế độ theo dõi để thấy Git đang kết nối tới đâu.

GIT_CURL_VERBOSE=1 GIT_TRACE=1 git ls-remote https://github.com/git/git.git

Trên PowerShell, đặt hai biến bằng cú pháp $env: trước khi chạy lệnh. Trong nhật ký, tìm dòng có chữ Connected to để biết Git đang nối tới proxy hay nối thẳng, và tìm mã phản hồi của bước CONNECT.

Tách lỗi proxy khỏi lỗi Git

Thử cùng proxy bằng cURL tới cùng máy chủ. cURL chạy được mà Git lỗi thì vấn đề ở cấu hình Git. Cả hai cùng lỗi thì vấn đề ở proxy hoặc mạng.

curl -x http://ana:pw123@103.1.2.3:8080 -I https://github.com

Git proxy trên Windows, macOS và Linux

Lệnh git config giống nhau trên mọi hệ điều hành. Khác biệt nằm ở những thứ xung quanh.

Windows

Git for Windows không tự dùng cài đặt proxy trong Settings của Windows. Anh em phải khai báo cho Git như các phần trên. Trình quản lý thông tin đăng nhập đi kèm, Git Credential Manager, là một chương trình riêng. Nó đọc cấu hình http.proxy của Git và các biến môi trường, nên thường không cần cấu hình thêm. Cách xem proxy hệ thống để lấy địa chỉ có trong bài cách xem proxy của máy tính.

macOS

Git trên macOS dùng libcurl của hệ thống hoặc của Homebrew. Proxy trong System Settings không tự áp dụng cho Git. Đặt http.proxy hoặc biến môi trường trong tệp cấu hình của shell.

Linux

Trên máy chủ Linux, cách phổ biến là đặt biến môi trường cho toàn hệ thống. Lưu ý lệnh sudo mặc định không giữ biến môi trường của người dùng, nên git chạy bằng sudo có thể không thấy proxy. Hướng dẫn cấu hình ở mức hệ thống có trong bài cách cấu hình proxy Ubuntu.

Công cụ có giao diện

Các trình soạn mã và ứng dụng Git có giao diện thường gọi chương trình git bên dưới, nên chúng dùng luôn cấu hình http.proxy. Một số ứng dụng có phần cài đặt proxy riêng cho các tính năng khác như tải tiện ích. Hai phần này độc lập, cần đặt cả hai nếu ứng dụng không tự đọc.

Hệ thống CI và container

Trong tệp định nghĩa pipeline, đặt biến https_proxy ở mức công việc. Trong Dockerfile, truyền proxy bằng tham số build thay vì ghi cứng vào ảnh, để mật khẩu không nằm lại trong các lớp của ảnh.

Quy trình kiểm tra git proxy sau khi cấu hình

Đặt xong cấu hình chưa có nghĩa là Git đã đi đúng đường. Một quy trình kiểm tra ngắn giúp anh em tin chắc trước khi giao máy cho cả nhóm dùng.

Bước 1: xác nhận giá trị đang có hiệu lực

Chạy lệnh xem cấu hình kèm nguồn gốc ở cả ba mức. Nếu có nhiều giá trị, giá trị ở mức hẹp hơn thắng. Kiểm tra luôn các biến môi trường, vì một biến cũ còn sót trong tệp cấu hình của shell có thể gây nhầm lẫn về sau.

Bước 2: thử một lệnh nhẹ

Lệnh git ls-remote chỉ hỏi danh sách nhánh, không tải dữ liệu, nên là phép thử nhanh nhất. Lệnh trả về danh sách nhánh nghĩa là cả đường qua proxy lẫn xác thực với kho đều ổn.

Bước 3: xác nhận lưu lượng thật sự qua proxy

Bật nhật ký chi tiết cho lệnh ở bước 2 và tìm dòng cho biết Git kết nối tới địa chỉ nào. Địa chỉ đó phải là địa chỉ proxy. Nếu là địa chỉ của máy chủ kho mã, Git đang đi thẳng, có thể do một mục no_proxy khớp với tên miền hoặc do cấu hình theo địa chỉ ghi đè.

Bước 4: thử một thao tác nặng

Clone một kho cỡ vừa để kiểm tra proxy chịu được kết nối dài và dung lượng lớn. Nhiều proxy qua được bước 2 nhưng đứt ở bước này vì giới hạn thời gian kết nối.

Bước 5: ghi lại cấu hình cho nhóm

Viết vài dòng hướng dẫn trong tài liệu dự án: dùng proxy nào, đặt ở mức nào, cách gỡ. Người mới vào nhóm không phải dò lại từ đầu, và khi proxy đổi địa chỉ chỉ cần sửa một chỗ.

Chọn proxy phù hợp để dùng với Git

Git không kén loại proxy như trình duyệt nuôi tài khoản. Thứ quan trọng là băng thông, độ ổn định và việc proxy cho phép kết nối dài.

Tiêu chí chính

  • Hỗ trợ phương thức CONNECT tới cổng 443, hoặc là SOCKS5.
  • Băng thông đủ lớn, không tính theo dung lượng quá chặt, vì clone kho lớn có thể tới hàng gigabyte.
  • Không cắt kết nối kéo dài vài phút.
  • Địa chỉ ổn định nếu máy chủ Git chỉ cho truy cập từ địa chỉ đã đăng ký.

Loại proxy gợi ý

Proxy datacenter có băng thông lớn và giá hợp lý, hợp nhất với Git. Xem bài proxy datacenter Việt Nam. Khi máy chủ Git của đối tác yêu cầu khai báo địa chỉ truy cập, proxy tĩnh cho một địa chỉ cố định để đăng ký. Proxy xoay không hợp, vì địa chỉ đổi giữa lúc truyền dữ liệu có thể làm đứt phiên.

Proxy miễn phí và mã nguồn

Mã nguồn và mã truy cập kho là tài sản. Kết nối HTTPS bảo vệ nội dung, nhưng proxy không rõ nguồn gốc vẫn là rủi ro không đáng nhận. Lý do có trong bài proxy miễn phí có an toàn không.

ProxyVN cung cấp proxy datacenter Việt Nam và US, proxy dân cư tĩnh Viettel, VNPT, FPT, hỗ trợ cả HTTP và SOCKS5 với user/password. Anh em cần đường ra ổn định cho máy build hay máy làm việc có thể mua proxy tại ProxyVN và khai báo vào Git bằng một dòng lệnh.

Câu hỏi thường gặp về git proxy

Phần này trả lời nhanh các thắc mắc phổ biến.

Lệnh nào xem git proxy đang đặt

Chạy git config --show-origin --get-all http.proxy. Kết quả gồm cả đường dẫn tệp chứa giá trị. Kiểm tra thêm các biến môi trường http_proxy, https_proxy, all_proxy.

Lệnh nào gỡ git proxy

Chạy git config --global --unset http.proxy. Nếu đã lỡ đặt https.proxy thì gỡ tương tự. Xoá cả biến môi trường nếu có.

Vì sao đặt http.proxy rồi mà git clone bằng địa chỉ git@ vẫn không qua proxy

Vì địa chỉ đó dùng SSH. Cấu hình ProxyCommand trong tệp cấu hình SSH hoặc đổi remote sang HTTPS.

Có cần đặt proxy riêng cho git push không

Không. Push, pull, fetch, clone trên cùng một remote dùng chung cấu hình.

Git LFS có dùng http.proxy không

Có. Git LFS đọc cấu hình http.proxy của Git và các biến môi trường về proxy.

Git submodule có đi qua proxy không

Có, nếu proxy đặt ở mức global hoặc bằng biến môi trường. Cấu hình ở mức local của kho cha không tự áp dụng cho kho con.

Dùng proxy có làm Git chậm không

Thêm một chặng trung gian thì có thêm độ trễ. Với proxy gần và băng thông tốt, khác biệt không đáng kể. Trong mạng mà đường thẳng tới kho mã bị nghẽn, đi qua proxy có khi còn nhanh hơn.

Kết luận

Git proxy cho kho HTTPS chỉ cần tuỳ chọn http.proxy, nhận cả địa chỉ HTTP lẫn SOCKS5, đặt được theo máy chủ, theo kho hoặc theo từng lệnh. Kho dùng SSH cần ProxyCommand trong cấu hình SSH. Khi lỗi, đọc mã 407, kiểm tra ký tự đặc biệt trong mật khẩu và thử proxy bằng cURL trước. Cần proxy băng thông lớn cho máy build, liên hệ Proxy.vn - Nhà cung cấp dịch vụ proxy chất lượng hàng đầu Việt Nam để chọn gói phù hợp với git proxy của nhóm.

TIN TỨC LIÊN QUAN