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 ( staging
và beta
).
Tôi phát triển staging
và sử dụng master
chi 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 master
chi 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 master
chi 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 status
tôi nhận đượcNo changes to commit
git add your-file
và cam kết.
staging
.
reset --hard
chư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.