Tôi nhân bản một repo git và sau đó bắt đầu chơi xung quanh trong nhánh chính của nó. Sau một thời gian, tôi muốn bỏ qua những thay đổi mà tôi vừa mới thực hiện (không cam kết) và chuyển sang một nhánh khác. Tuy nhiên, nó ngăn tôi chuyển đổi vì có những thay đổi không được cam kết. Làm thế nào để tôi bỏ qua chúng mà không có stashing chúng? Đây là những gì sẽ xảy ra:Chuyển đổi chi nhánh sau khi hủy bỏ các thay đổi hiện tại trong git
$ git checkout gh-pages
error: Your local changes to the following files would be overwritten by checkout:
somefile.txt
Please, commit your changes or stash them before you can switch branches.
Aborting
Tùy chọn 1 không hoạt động. Git là một goliath của một người giải quyết vấn đề miễn cưỡng. Tôi đã buộc phải làm cho git reset --hard .. một thói quen. Chén thánh của lệnh git sửa mọi thứ. – shailenTJ
@shailenTJ Bạn nên là một nhà thơ :) Và yên tâm, tôi sử dụng git reset --hard thường xuyên. Nhưng vấn đề là, nó là một vũ khí mạnh mẽ và bạn không nên sử dụng nó mà không đưa ra suy nghĩ đúng đắn, vì nó _will_ mất bất cứ thứ gì không được cam kết (hoặc ít nhất được thêm vào chỉ mục một lần, và điều đó sẽ phức tạp để phục hồi). – sehe
Tùy chọn 2 không hoạt động đối với tôi, nó chỉ lặp lại lỗi. Git là một cơn ác mộng. – Owl