Cách kết nối kho lưu trữ Git với nhiều máy chủ từ xa trên Windows

Cập nhật lần cuối: August 28 2026
tác giả: Isaac
  • Thiết lập máy chủ Git riêng trên Windows bằng Git Daemon và mạng ảo như Hamachi.
  • Triển khai quy trình làm việc chuyên nghiệp bằng cách tách nhánh sản xuất (chính) khỏi các nhánh phát triển.
  • Quản lý xác thực an toàn bằng khóa SSH và Mã truy cập cá nhân (PAT) cho môi trường từ xa.
  • Điều chỉnh các tham số toàn cục trong Git để tránh xung đột xuống dòng giữa hệ điều hành Windows và Unix.

Kỹ sư phần mềm đang sử dụng máy tính xách tay trước các giá đỡ máy chủ trong một trung tâm dữ liệu hiện đại.

Chắc hẳn bạn cũng từng gặp phải tình huống này: bạn có vài máy tính ở nhà hoặc văn phòng và muốn đồng bộ hóa mã nguồn mà không cần thiết phải dựa vào các dịch vụ đám mây bên ngoài. Mặc dù hiện nay ai cũng dùng GitHub, nhưng vẫn có những trường hợp bạn muốn tự thiết lập máy chủ Git riêng để kiểm soát hoàn toàn các tệp tin của mình và không để bên thứ ba lưu trữ tài sản trí tuệ của bạn.

Việc thiết lập này trên Windows có vẻ khá rắc rối, đặc biệt khi bạn gặp phải các rào cản mạng hoặc lỗi kết nối khó hiểu. Nhưng đừng lo lắng, chúng tôi sẽ hướng dẫn từng bước cách kết nối các máy của bạn, cho dù sử dụng mạng ảo như Hamachi , máy chủ Linux dựa trên đám mây hay thiết lập SSH truyền thống, để mọi thứ hoạt động trơn tru.

chương trình truy cập từ xa miễn phí tốt nhất
Bài viết liên quan:
Phần mềm truy cập từ xa miễn phí tốt nhất: Hướng dẫn đầy đủ

Thiết lập máy chủ Git riêng của bạn trên Windows với mạng ảo.

Ảnh cận cảnh màn hình máy tính hiển thị mã lập trình trong môi trường tối.

Nếu bạn có hai máy tính Windows 11 và muốn máy thứ nhất hoạt động như một máy chủ, cách nhanh nhất khi chúng không nằm trên cùng một mạng cục bộ là sử dụng Hamachi. Để làm được điều này, trước tiên bạn cần cài đặt Git và Hamachi trên cả hai máy. Mẹo ở đây là không nên cố gắng đẩy mã vào một thư mục thông thường, mà hãy cấu hình một kho lưu trữ không phải là kho lưu trữ trống (non-bare repository) hoặc sử dụng công cụ Git Daemon.

Để bắt đầu, hãy tạo một thư mục cho dự án của bạn (ví dụ: C:\Repos\Test.git) và chạy lệnh sau: git initViệc thêm ít nhất một tệp, chẳng hạn như tệp .gitignore, là điều cần thiết để thực hiện việc này. git add . và thực hiện lệnh commit đầu tiên. Để cho phép máy tính khác kết nối, bạn phải kích hoạt máy chủ bằng lệnh. git daemon --export-all --base-path=. --reuseaddr --verboseVề phía máy khách, để tránh các vấn đề về quyền truy cập, nên chạy lệnh sau: git config --global sendpack.sideband false trước khi ném được sao chép bằng địa chỉ IP của Hamachi.

Bài viết liên quan:
Tôi sử dụng GitLab như thế nào?

Quản lý chi nhánh và quy trình làm việc chuyên nghiệp

Dãy máy chủ dạng tháp trong trung tâm dữ liệu với ánh sáng xanh và đỏ, tượng trưng cho các máy chủ riêng cục bộ.

Một lỗi rất phổ biến khi mới bắt đầu là đẩy tất cả các thay đổi trực tiếp lên nhánh chính (master). Điều này không được khuyến khích, vì nhánh chính nên là môi trường sản xuất của bạn — nghĩa là, nơi chỉ có mã hoạt động sẵn sàng để triển khai. Lý tưởng nhất là bạn nên tạo một nhánh có tên là default hoặc develop để xử lý các công việc nặng nhọc.

  Làm cách nào để hạ cấp hình mờ trong Word?

Quy trình làm việc hợp lý là thực hiện các commit trên nhánh con, đẩy các thay đổi lên Git, và lưu tất cả các thay đổi vào Git trước khi, sau khi đã xác minh rằng mọi thứ hoạt động chính xác, thực hiện hợp nhất vào nhánh chính (master) . Bằng cách này, bạn duy trì được lịch sử sạch sẽ và ngăn chặn một lỗi nhỏ làm hỏng phiên bản ổn định của ứng dụng.

Cách sử dụng SSHFS
Bài viết liên quan:
Hướng dẫn sử dụng SSHFS từng bước: Gắn kết hệ thống tệp từ xa qua SSH

Các giải pháp thay thế nâng cao: Máy chủ và giao thức đám mây

Chi tiết các giá đỡ máy chủ được chiếu sáng màu xanh lam, thể hiện cơ sở hạ tầng máy chủ đám mây.

Nếu bạn đang tìm kiếm một giải pháp mạnh mẽ hơn máy tính cá nhân tại nhà, việc thiết lập một máy chủ Linux (Ubuntu hoặc CentOS) là lựa chọn tối ưu. Tại đây bạn có thể cài đặt Git bằng cách sử dụng... apt-get install git o yum install git-coreTrong những môi trường này, giao thức chính là SSH (Vỏ an toàn)Bởi vì nó cung cấp khả năng mã hóa mạnh mẽ và cho phép quản lý quyền truy cập mà không cần để lộ mật khẩu dưới dạng văn bản thuần.

Để di chuyển một dự án cục bộ lên máy chủ từ xa kiểu này, cách tiếp cận tối ưu nhất là tạo một bản sao "trống" (không có tệp làm việc, chỉ có cơ sở dữ liệu Git) bằng cách sử dụng git clone --bare và sau đó tải nó lên máy chủ bằng lệnh scpĐiều này biến máy chủ của bạn thành một nút đồng bộ trung tâm nơi tất cả các nhà phát triển trong nhóm có thể kéo và đẩy dữ liệu.

Cấu hình môi trường Git thiết yếu

Chiếc kính phản chiếu mã lập trình trên màn hình, thể hiện cài đặt nhận dạng và trọng tâm của nhà phát triển.

Trước khi bạn bắt đầu sử dụng các lệnh một cách bừa bãi, bạn cần thiết lập môi trường của mình đúng cách. Git cần biết bạn là ai để ký các commit; nếu bạn không cấu hình đúng... user.name y user.emailHệ thống sẽ hiển thị lỗi hoặc gán tên chung chung. Bạn có thể áp dụng những thay đổi này trên toàn hệ thống để ảnh hưởng đến tất cả các dự án của mình hoặc áp dụng cục bộ nếu muốn. các danh tính khác nhau tùy thuộc vào kho lưu trữ.

sự cố bảo mật trên github
Bài viết liên quan:
Sự cố bảo mật GitHub: rủi ro thực tế và cách bảo vệ kho lưu trữ của bạn

Một điểm quan trọng khác trong Windows là cách xử lý ngắt dòng. Windows sử dụng CR+LF, trong khi Linux và macOS chỉ sử dụng LF. Để ngăn Git đánh dấu các tệp là đã sửa đổi chỉ dựa trên định dạng, bạn phải chạy lệnh sau: git config --global core.autocrlf true trên Windows. Bạn cũng có thể tùy chỉnh... trình soạn thảo văn bản mặc định (chẳng hạn như Visual Studio Code hoặc Sublime Text) để giúp việc chỉnh sửa mã hoặc cập nhật thông báo trở nên thuận tiện hơn nhiều.

  Danh sách Liên hệ trong Outlook ở đâu?

Kết nối với GitHub: SSH so với mã thông báo PAT

Nếu cuối cùng bạn quyết định sử dụng GitHub, bạn có hai cách để xác thực. Cách thứ nhất là SSH, bao gồm việc tạo một cặp khóa (khóa công khai và khóa riêng tư). Khóa công khai được tải lên GitHub, còn khóa riêng tư vẫn nằm trên máy tính của bạn. Đây là lựa chọn thuận tiện nhất vì nó loại bỏ việc phải nhập mật khẩu mỗi khi đẩy mã lên, miễn là bạn đã chạy ssh-agent.

Phương án thứ hai là Mã truy cập cá nhân (PAT). Loại mã này lý tưởng nếu bạn làm việc với nhiều máy khác nhau hoặc trong môi trường tích hợp liên tục. Khi bạn tạo mã trong cài đặt nhà phát triển GitHub, nó hoạt động như một mật khẩu tạm thời với các quyền cụ thể , bổ sung thêm một lớp bảo mật vì bạn có thể thu hồi mã bất cứ lúc nào mà không cần thay đổi mật khẩu chính của mình.

Làm chủ điều khiển từ xa và giải quyết xung đột

Quản lý nhiều máy chủ từ xa rất dễ dàng nếu bạn hiểu các lệnh. git remote addTheo mặc định, máy chủ chính được gọi là "origin", nhưng bạn có thể thêm bao nhiêu máy chủ từ xa tùy thích. Nếu bạn mắc lỗi trong URL hoặc thay đổi giao thức (ví dụ: từ HTTPS sang SSH), bạn không cần xóa máy chủ từ xa; chỉ cần sử dụng lệnh sau. git remote set-url origin .

Nếu bạn phát hiện ra rằng điều khiển từ xa đã tồn tại, bạn có thể đổi tên nó bằng cách sử dụng git remote rename hoặc loại bỏ nó hoàn toàn bằng git remote rm. Nhớ lấy Việc ngắt kết nối từ xa không xóa dữ liệu. Trên máy chủ, thao tác này đơn giản là ngắt kết nối giữa thư mục cục bộ của bạn và máy chủ bên ngoài, cho phép bạn kết nối lại với một đích đến khác mà không làm mất lịch sử commit của mình.

  Ctfmon exe là gì? Tôi có nên tắt nó trong Windows 10 không?

Nắm vững việc kết nối các kho lưu trữ bao gồm hiểu mọi thứ, từ cấu hình nhận dạng cơ bản và ngắt dòng đến triển khai máy chủ riêng bằng Git Daemon trên mạng ảo và bảo mật khóa SSH trên đám mây. Cho dù bạn chọn quy trình làm việc cục bộ với Hamachi hay cơ sở hạ tầng chuyên nghiệp trên GitHub, chìa khóa nằm ở việc quản lý nhánh đúng cách để bảo vệ phiên bản ổn định và sử dụng các giao thức xác thực phù hợp để đảm bảo an toàn mã nguồn.

Hình ảnh chi tiết của máy chủ NAS, làm nổi bật phần cứng lưu trữ dữ liệu.
Bài viết liên quan:
Hướng dẫn bảo mật NAS toàn diện: Mã hóa và truy cập từ xa an toàn