Câu hỏi này tương tự như câu hỏi này , nhưng cụ thể hơn.
Tôi có một dự án với hai chi nhánh ( stagingvà beta).
Tôi phát triển stagingvà sử dụng masterchi nhánh để sửa lỗi. Vì vậy, nếu tôi đang làm việc trên sân khấu và tôi thấy một lỗi, tôi đổi sang masterchi nhánh:
git checkout master
và làm những thứ:
git add fileToAdd
git commit -m "bug fixed"
và sau đó tôi hợp nhất với cả hai nhánh:
git checkout staging
git merge master
git checkout beta
git merge beta
Và không có vấn đề gì nếu có các tệp khác trên cây làm việc.
Nhưng bây giờ, khi tôi cố gắng đổi sang masterchi nhánh, tôi gặp lỗi :
error: Your local changes to the following files would be overwritten by checkout:
src/Pro/ConvocationBundle/Controller/DefaultController.php
Please, commit your changes or stash them before you can switch branches.
Aborting
Tôi nghĩ rằng tôi nên xóa tập tin khỏi khu vực tổ chức:
git reset HEAD src/Pro/ConvocationBundle/Controller/DefaultController.php
Nhưng tôi đang nhận được cùng một lỗi. Nếu tôi làm git statustôi nhận đượcNo changes to commit
git add your-filevà cam kết.
staging.
reset --hardchưa Nếu bạn thực sự chắc chắn muốn loại bỏ những thay đổi của bạn. Hoặc sử dụng stash nếu bạn không.