Tôi nghĩ git fetch là những gì bạn đang tìm kiếm.
Nó sẽ kéo các thay đổi và đối tượng mà không cam kết chúng với chỉ mục của đại diện địa phương của bạn.
Chúng có thể được hợp nhất sau đó với git merge .
Trang nam
Chỉnh sửa: Giải thích thêm
Trực tiếp từ liên kết Khóa học Git- SVN
Bây giờ, làm thế nào để bạn nhận được bất kỳ thay đổi mới từ một kho lưu trữ từ xa? Bạn lấy chúng:
git fetch http://host.xz/path/to/repo.git/
Tại thời điểm này, chúng nằm trong kho lưu trữ của bạn và bạn có thể kiểm tra chúng bằng cách sử dụng:
git log origin
Bạn cũng có thể khác biệt những thay đổi. Bạn cũng có thể sử dụng git log HEAD..origin để xem chỉ những thay đổi bạn không có trong chi nhánh của mình. Sau đó, nếu muốn hợp nhất chúng - chỉ cần làm:
git merge origin
Lưu ý rằng nếu bạn không chỉ định một nhánh để tìm nạp, nó sẽ thuận tiện mặc định theo điều khiển từ xa.
Đọc trang người đàn ông là trung thực sẽ cung cấp cho bạn sự hiểu biết tốt nhất về các tùy chọn và cách sử dụng nó.
Tôi chỉ đang cố gắng thực hiện điều này bằng các ví dụ và bộ nhớ, hiện tại tôi không có hộp để kiểm tra. Bạn nên nhìn vào:
git log -p //log with diff
Việc tìm nạp có thể được hoàn tác với thiết lập lại git --hard ( liên kết ), tuy nhiên tất cả các thay đổi không được cam kết trong cây của bạn sẽ bị mất cũng như các thay đổi bạn đã tìm nạp.