我stash
编辑了我的本地更改,以便与远程同步。在pull
之后,我继续pop
存储:
>git stash pop
Auto-merging somedir/someFile.xyz
CONFLICT (add/add): Merge conflict in somedir/someFile.xyz
假设我意识到我要放弃对somedir/someFile.xyz
的所有更改,只需从遥控器中引入该版本即可。我试过了
>git checkout somedir/someFile.xyz
error: path 'somedir/someFile.xyz' is unmerged
如何撤消我的本地更改并强制从远程显示需要合并的文件?
答案 0 :(得分:1)
你应该尝试使用git提供的一些开关,如:
git checkout --ours somedir/someFile.xyz
或
git checkout --theirs somedir/someFile.xyz
据我所知,--ours
开关会带来HEAD
中--theirs
开头的文件版本{{1}}开关将应用您输入的文件中存储的更改。
答案 1 :(得分:0)
签出时使用强制选项。
来自git --help checkout
-
-f, - force切换分支时,即使索引或工作树与HEAD不同,也要继续。这用来扔掉当地人 变化。
检查索引中的路径时,请勿在未合并时失败 项;相反,未合并的条目将被忽略。
所以,git checkout -f <remote> somedir/someFile.xyz
。
答案 2 :(得分:0)
尝试git merge --abort
,它会中止合并,但也可能会因git stash pop
引起的冲突而失败,我不确定。