Câu trả lời:
Giả sử bạn không cam kết tệp hoặc thêm nó vào chỉ mục, sau đó:
git checkout -- filename
Giả sử bạn đã thêm nó vào chỉ mục, nhưng không cam kết, thì:
git reset HEAD filename
git checkout -- filename
Giả sử bạn đã cam kết, thì:
git checkout origin/master filename
Giả sử bạn muốn thổi bay tất cả các cam kết từ chi nhánh của mình (RẤT HẤP DẪN):
git reset --hard origin/master
git checkout origin/master filenametùy chọn vào câu trả lời của gahooa.
git reset --hard mastermột mình là giải pháp của tôi vì tôi không muốn tiếp cận nguồn gốc. Cảm ơn.
Nếu bạn chưa cam kết nó với nhánh chính, thật dễ dàng:
git checkout -b oops/fluke/dang)git add -u; git commit;)git checkout master)Những thay đổi của bạn sẽ được lưu trong oops chi nhánh / sán / dang; chủ sẽ được như nó đã được.
git checkout HEAD filenamevàgit checkout origin/master filenamecho các tùy chọn một và hai, nó sẽ phù hợp hơn?