この質問は、に似ているこのいずれかが、より具体的な。
2つのブランチ(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
か?本当に変更を破棄したい場合。または、そうでない場合はstashを使用します。