คำถามนี้คล้ายกับคำถามนี้แต่เจาะจงมากกว่า
ฉันมีโครงการที่มีสองสาขา ( staging
และbeta
)
ฉันพัฒนาstaging
และใช้master
สาขาเพื่อแก้ไขข้อบกพร่อง ดังนั้นหากฉันกำลังดำเนินการจัดเตรียมและฉันเห็นข้อผิดพลาดฉันเปลี่ยนเป็นmaster
สาขา:
git checkout master
และทำสิ่งต่างๆ:
git add fileToAdd
git commit -m "bug fixed"
จากนั้นฉันรวมกับทั้งสองสาขา:
git checkout staging
git merge master
git checkout beta
git merge beta
และไม่สำคัญว่าจะมีไฟล์อื่นอยู่บนแผนผังการทำงานหรือไม่
แต่ตอนนี้เมื่อฉันพยายามเปลี่ยนเป็นmaster
สาขาฉันได้รับข้อผิดพลาด :
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
ฉันคิดว่าฉันควรลบไฟล์ออกจากพื้นที่จัดเตรียม:
git reset HEAD src/Pro/ConvocationBundle/Controller/DefaultController.php
แต่ฉันได้รับข้อผิดพลาดเดียวกัน ถ้าgit status
ฉันได้รับNo changes to commit
git add your-file
และมุ่งมั่น
staging
ตอนนี้
reset --hard
หรือยัง? หากคุณแน่ใจจริงๆว่าต้องการยกเลิกการเปลี่ยนแปลงของคุณ หรือใช้ที่ซ่อนถ้าคุณไม่ทำ