我正在一个git分支上工作,并准备提交我的更改,所以我用一个有用的提交消息做了一个提交。然后,我心不在焉地对代码做了一些不值得保留的小更改。我现在想改变分支,但是git给了我,

错误:您对“X”进行了本地更改;不能切换分支。

我可以在不提交的情况下更改分支吗?如果是,我该如何设置呢?如果不是,我该如何解决这个问题?我想在不提交的情况下忽略较小的更改,只更改分支。


当前回答

这些答案都没有帮助我,因为即使在重置和保存之后,我仍然有未跟踪的文件。我必须这么做:

git reset --hard HEAD
git clean -d -f

其他回答

嗯,应该是这样

git stash save
git checkout branch
// do something
git checkout oldbranch
git stash pop

如果您想放弃更改,

git checkout -- <file>
git checkout branch

如果你想保留这些变化,

git stash save
git checkout branch
git stash pop

切换到一个新的分支丢失更改:

git checkout -b YOUR_NEW_BRANCH_NAME --force

切换到现有分支会丢失更改:

git checkout YOUR_BRANCH --force

这些答案都没有帮助我,因为即使在重置和保存之后,我仍然有未跟踪的文件。我必须这么做:

git reset --hard HEAD
git clean -d -f

跟进,

$: git checkout -f

$: git checkout next_branch