Tôi muốn lấy tệp mới nhất trong kho lưu trữ và ghi đè lên những gì tôi có tại địa phương. Làm thế nào tôi có thể làm điều này với khách hàng git?
Tôi muốn lấy tệp mới nhất trong kho lưu trữ và ghi đè lên những gì tôi có tại địa phương. Làm thế nào tôi có thể làm điều này với khách hàng git?
Câu trả lời:
Nếu bạn muốn ghi đè chỉ một tệp:
git fetch
git checkout origin/master <filepath>
Nếu bạn muốn ghi đè tất cả các tệp đã thay đổi:
git fetch
git reset --hard origin/master
(Điều này giả định rằng bạn đang làm việc master
tại địa phương và bạn muốn có các thay đổi về nguồn gốc master
- nếu bạn đang ở trong một chi nhánh, thay thế điều đó thay vào đó.)
git fetch git reset --hard origin/master
hoặc/<branch name>
Phiên bản đơn giản nhất, giả sử bạn đang làm việc trên cùng một nhánh mà tệp bạn muốn bật:
git checkout path/to/file
.
Tôi làm điều này thường xuyên đến nỗi tôi đã đặt bí danh gc='git checkout'
.
git checkout path/to/file
đã làm cho tôi. Ngoài ra, tôi thấy sơ đồ này rất hữu ích để hiểu khái niệm những gì git checkout
đang làm. liên kết
Điều này làm việc cho tôi:
git reset HEAD <filename>
Đồng bộ hóa đầy đủ có một số nhiệm vụ:
git thiết lập lại ĐẦU -
git sạch -f
git kéo nguồn gốc
Hoặc nếu không, điều tôi thích là, tôi có thể tạo một nhánh mới với cái mới nhất từ xa bằng cách sử dụng:
git checkout origin/master -b <new branch name>
nguồn gốc là tài liệu tham khảo kho lưu trữ từ xa của tôi và chủ là tên chi nhánh được xem xét của tôi. Đây có thể khác với bạn.