gpt4 book ai didi

git - 无法 pop git stash, 'Your local changes to the following files would be overwritten by merge'

转载 作者:IT王子 更新时间:2023-10-29 00:45:20 24 4
gpt4 key购买 nike

所以我有大量更改和一些未跟踪的文件。我需要调整一些东西,所以我使用了 git stash -u,修改了一些东西,提交了这些更改,推送了它们,然后尝试 git stash pop

因为我修改了几个我 stash 的文件,所以我收到以下消息:

error: Your local changes to the following files would be overwritten by merge:
file_1.py
file_2.py
Please, commit your changes or stash them before you can merge.
Aborting

这看起来很奇怪,我已经提交了所有新的更改,当我运行命令时我的 checkout 是干净的。

似乎 git stash pop 操作取消了我一半的更改和未跟踪的文件,但如果我再次尝试 git stash pop 我得到如下输出:

some_file.html already exists, no checkout
some_other_file.html already exists, no checkout
yet_another_file.html already exists, no checkout
Could not restore untracked files from stash

git stash show 仍然显示我的 stash 更改列表,但我不知道我现在要做什么。

我怎样才能摆脱困境?

最佳答案

对于那些确实有未提交的工作,并希望在不丢失该工作的情况下 pop 他们的 stash 的人,这里有一个方法(感谢@iFreilicht):

  1. 临时暂存任何未提交的更改:

     git add -u .
  2. 现在您可以在没有 git 提示的情况下应用您的存储(希望如此):

     git stash pop
  3. 现在取消暂存所有内容,但将文件保持原样:

     git reset

如果第 2 步由于更改冲突而无法完全修补,那么您将需要手动解决冲突。 git diff 应该可以帮助您找到它们。 git mergetool 可能会帮助您打开包含之前和当前文件的编辑器。

关于git - 无法 pop git stash, 'Your local changes to the following files would be overwritten by merge',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19937580/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com