Це питання схоже на це , але більш конкретне.
У мене є проект з двома відділеннями ( 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
? Якщо ви дійсно впевнені, що хочете скасувати свої зміни. Або використовуйте приховування, якщо цього не зробите.